Guzzle中的异步请求体

时间:2017-06-19 17:21:26

标签: php http guzzle

我想使用Guzzle PHP HTTP客户端发送异步请求,但似乎它只允许body为字符串。

我有标头变量

$headers = [
    "Authorization" : $token
];

同样我希望身体也作为数组

$body = [
    "x"=>$y,
    "y"=>$z,
]

我将请求变量设为

$request = new  \GuzzleHttp\Psr7\Request(
    'POST',
    'API_URL',
    $headers,
    $body
 );

但是我收到InvalidArgumentException Invalid resource type: array错误,但在尝试$body="some useless string"时,请求被发送到服务器,但由于正文没有合适的参数而得到错误。

如何使用我想要的键将Body设置为数组/(如果需要,嵌套数组)。

1 个答案:

答案 0 :(得分:2)

使用json_encode功能,通过

传递您的身体阵列
$request = new \GuzzleHttp\Psr7\Request(
    'POST',
    'API_URL',
    $headers,
    json_encode($body)
);
相关问题