我在设置Guzzle标头时遇到问题。
try {
$res = $client->post($apiURL,
[
'headers' => [
'Content-Type' => 'application/json',
'accept' => 'application/json',
'Authorization' => 'Bearer ' . $token,
],
'body' => \GuzzleHttp\json_encode([
'query' => 'xxxyyy'
])
]
);
} catch (\GuzzleHttp\Exception\ClientException $e) {
dd($e->getResponse()->getBody()->getContents());
}我从服务器得到响应,我需要检查我的访问令牌,尽管它在做同样的请求时在邮递员中通过得很好。当检查Chrome检查器时,我看到
Content-Type:application/x-www-form-urlencoded; charset=UTF-8
我尝试直接在new Client()构造函数中设置头,但得到了相同的响应。
使用的包:use GuzzleHttp\Client;
发布于 2017-06-26 20:55:27
从你的问题中还不清楚问题出在哪里。
通常使用the form_params option传递application/x-www-form-urlencoded body,使用json选项传递application/json body。Content-Type报头将自动设置。
似乎需要发送一个表单,但您正在发送一个JSON。
https://stackoverflow.com/questions/44750329
复制相似问题