0
使用Laravel 5並試圖將一些數據從我的網站發送到另一個,這爲我提供了REST API。但他們使用cookies作爲授權。目前,我已成功通過身份驗證。並堅持如何通過POST方法將此cookie發送到API接口?這是我的列表。如何在使用REST API時發送cookie?
Thanx提前。
P.S.所有的事情都在控制器內進行。
if (Cookie::get('amoauth') !== null) {
//COOKIE IS HERE
$client = new Client();
$newlead = $client->post('https://domain.amocrm.ru/private/api/v2/json/leads/set', [
'add' => [
'add/name' => 'TEST LEAD',
'add/date_create' => time(),
'add/last_modified' => time(),
'add/status_id' => '1',
'add/price' => 5000
]
]);
} else {
$client = new Client();
$auth = $client->post('https://domain.amocrm.ru/private/api/auth.php',[
'USER_LOGIN' => 'login',
'USER_HASH' => 'hash',
'type' => 'json'
]);
$auth = $auth->getHeaders('Set-Cookie');
Cookie::queue('amoauth', $auth, 15);
return redirect('/test');
}
現在返回我的以下內容:
Client error: `POST https://domain.amocrm.ru/private/api/v2/json/leads/set` resulted in a `401 Unauthorized` response.
發現這個:https://github.com/guzzle/guzzle/issues/1400但仍然不知道如何實現它(通過此鏈接描述相同的情況)。 – Dmitri
試圖使用'CookieJar:$ jar = new \ GuzzleHttp \ Cookie \ CookieJar(Cookie :: get('amoauth'));'但仍然獲得'401 Unauthorized' ...也許我在獲取和存儲這個來自API提供商的cookie? – Dmitri
這是我從API提供者成功驗證後得到的結果:[link](https://pastebin.com/PECa1xdv)。這是存儲cookie:[鏈接](https://pastebin.com/PDVBiwNh)。任何想法都值得肯定。 – Dmitri