guzzlehttp是一個非常強大的php語言的http client包,支持保存前面請求服務端返回的cookie信息用於後續的請求。
我們在實際的開發中往往需要傳遞自定義的cookie值,這個功能在官方的文檔裏面沒有找到介紹,在網上搜索了好久也沒有找到相關的實現 ,最後在國外的網站找到了例子,在這記錄下來,希望對其他人能有幫助。
$default = [
'cookies' =>[
'x-token' => "test-token",
'appId' => "test-appid"
],
'headers'=>[]
];
$cookie && $default['cookies'] = array_merge($default['cookies'], **$cookie**);
$cookieJar = CookieJar::fromArray($default['cookies'], $this->domain);
$client = new Client();
$options = [
'form_params' => $param,
'headers' => $headers,
'cookies' => $cookieJar
];
$response = $client->post($this->baseURL.$path, $options);