GuzzleHttp: como posso salvar os cookies de uma resposta do POST e usá-los no próximo POST?
Estou usando o Guzzle para acessar meu site de API e, no momento em que estou logado com as credenciais corretas, recebo um cookie com um RefreshToken para enviá-lo na próxima chamada, aqui está o meu código simples (e funcionando bem):
$client = new Client(array(
'cookies' => true
));
$response = $client->request('POST', 'http://myapi.com/login', [
'timeout' => 30,
'form_params' => [
'email' => $request->get('email'),
'password' => $request->get('password'),
]
]);
e recebo a resposta certa com um cookie, posso vê-lo usando:
$newCookies = $response->getHeader('set-cookie');
agora, preciso usar esse cookie nas próximas chamadas e sei que o Guzzle pode salvar o cookie para mim e enviá-lo automaticamente (ou não) na próxima chamada usando um "CookieJar" ou "SessionCookieJar", tentei usar mas não vejo o cookie no 'jar', eis o que fiz:
$cookieJar = new SessionCookieJar('SESSION_STORAGE', true);
$client = new Client([
'cookies' => $cookieJar
]);
$response = $client->request ....
mas, quando recebo o cookie de volta do POST, posso vê-lo apenas usando:
$newCookies = $response->getHeader('set-cookie');
e não está no cookieJar, por isso não será enviado na próxima ligação .. o que estou perdendo aqui?
Obrigado!