跟外界产品合作对接API的时候,很多时候要求post方式传递json格式的数据。下面简单讲讲处理方式。
传递json格式数据的时候,需要注意:
- 1.指定请求后header里面的Content-type的值为application/json。
- 2.传递的值名为body,对应的值需要为json格式。
使用Postman演示
使用php代码演示
说明:
本实例依赖composer Guzzle扩展
composer require guzzlehttp/guzzle
具体代码:
/**
* 发送api请求
* @param string $api api地址
* @param array $postData 传递的数据
* @return mixed|string
*/
function sendApiRequest(string $api,array $postData)
{
$client = new \GuzzleHttp\Client([
‘headers‘ => [ ‘Content-Type‘ => ‘application/json‘ ]
]);
$response = $client->request(‘POST‘,$api,[‘body‘ => json_encode($postData),]);
$result=$response->getBody()->getContents();
$result = \GuzzleHttp\json_decode($result,true);
return $result;
}