douzhiling3166
2017-09-24 07:31
采纳率: 100%
浏览 6.0k
已采纳

使用Guzzle使用JSON发送POST请求

$client = new Client();
$url = 'api-url';

$request = $client->post($url, [
    'headers' => ['Content-Type' => 'application/json'],
    'json' => ['token' => 'foo']
]);

return $request;

然后我返回了502 Bad Gateway 以及Resource解释为Document,但以MIME类型application / json传输

我需要用一些json发出POST请求。 如何在Laravel中使用Guzzle做到这一点?

图片转代码服务由CSDN问答提供 功能建议

$ client = new Client(); $ url ='api-url'; $ request = $ client-> post($ url,[ 'headers'=> ['Content-Type'=>'application / json'], 'json'=> [' token'=>'foo'] ]); return $ request;

我回来了 502 Bad Gateway 和资源解释为文档但使用MIME类型application / json进行传输

我需要使用一些json发出POST请求。 我怎么能在Laravel的Guzzle中做到这一点?

  • 写回答
  • 关注问题
  • 收藏
  • 邀请回答

2条回答 默认 最新

  • duancao1951 2017-09-24 07:40
    已采纳

    Give it a try

    $response = $client->post('http://api.example.com', [
        'json' => [
           'key' => 'value'
         ]
    ]);
    
    dd($response->getBody()->getContents());
    
    打赏 评论
  • duanmei1694 2017-09-25 14:16

    Take a look..

    $client = new Client();
    
    $url = 'api-url';
    
    $headers = array('Content-Type: application/json');
    
    $data = array('json' => array('token' => 'foo'));
    
    $request = new Request("POST", $url, $headers, json_encode($data));
    
    $response = $client->send($request, ['timeout' => 10]);
    
    $data = $response->getBody()->getContents();
    
    打赏 评论

相关推荐 更多相似问题