Как я могу отправить куки с Guzzlehttp / guzzle 6?

Мне нужно отправить запрос с пользовательскими cookies.

У меня все еще были проблемы, я не знаю, как это сделать..

спасибо!

2 ответов


use GuzzleHttp\Cookie\CookieJar;

$cookieJar = CookieJar::fromArray([
    'cookie_name' => 'cookie_value'
], 'example.com');

$client->request('GET', '/get', ['cookies' => $cookieJar]);

вы можете прочитать в документации здесь.


жрать может поддерживать сеанс cookie для вас, если указано с помощью опции запроса cookies. При отправке запроса параметр cookies должен быть установлен в экземпляр GuzzleHttp\Cookie\CookieJarInterface.

// Use a specific cookie jar
$jar = new \GuzzleHttp\Cookie\CookieJar;
$r = $client->request('GET', 'http://httpbin.org/cookies', [
    'cookies' => $jar
]);

вы можете установить cookies в true в конструкторе клиента, если вы хотите использовать общую банку cookie для всех запросов.

// Use a shared client cookie jar
$client = new \GuzzleHttp\Client(['cookies' => true]);
$r = $client->request('GET', 'http://httpbin.org/cookies');

проверить полный краткое руководство.