nextcloud/server

Allow to get CookieJar in IClientService

Open

#14.447 geöffnet am 28. Feb. 2019

Auf GitHub ansehen
 (4 Kommentare) (0 Reaktionen) (0 zugewiesene Personen)PHP (4.865 Forks)batch import
1. to developenhancementgood first issueperformance 🚀technical debt

Repository-Metriken

Stars
 (34.953 Stars)
PR-Merge-Metriken
 (Durchschn. Merge 20T) (627 gemergte PRs in 30 T)

Beschreibung

With IClientService you can get a wrapped GuzzleClient. However you have no way to keep the cookies with our API.

The following would work:

		$cookieJar = new \GuzzleHttp\Cookie\CookieJar();

		$client = $this->clientService->newClient();
		$response = $client->post(
			'.../login', [
				'body' => [
					'name' => $name,
					'password' => $password,
				],
				'cookies' => $cookieJar,
			]
		);

		$response = $client->get(
			'.../authed-api', [
				'cookies' => $cookieJar,
			]
		);

I think we should add a newCookieJar() method to the clientService, to hide the Guzzle CookieJar. I just don't know what to do with the interface, Should we add a dummy around it like with the client? and forward all calls to the internal?

cc @MorrisJobke @rullzer agreed and okay for 16?

Contributor Guide