2017-06-25 82 views
0

我无法设置我的Guzzle标题。Laravel 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;

回答

0

这不是从你的问题,是什么问题不清楚。

一般来说,使用the form_params option可以通过application/x-www-form-urlencoded正文和json选项来通过application/json正文。 Content-Type标题将自动设置。

看来需要发送一个表单,但是您要发送一个JSON。