是否可以GET在 GuzzlePHP 客户端中为请求传递一组数据?
我在文档和 Stack Overflow 上没有找到任何内容。
即这不像我期望的那样工作:
// first level of this array is refered as
// request settings: headers, redirects, etc.
$array = [
'this will be rendered as request settings',
'data' => [
'var1' => 'value1',
'var4' => 'value4',
],
];
$client = new \GuzzleHttp\Client();
$res = $client->request('GET', '/redirect/3', $array);
Run Code Online (Sandbox Code Playgroud)
编辑:对于所有无法理解问题的人:
此请求中未传递 GET 参数,因此我仅获取此 URL 结构:
http://host/redirect/3
Run Code Online (Sandbox Code Playgroud)
预期的:
http://host/redirect/3?var1=value1&var4=value4
Run Code Online (Sandbox Code Playgroud)
终于找到了 设置键是query如果其他人需要它:
$params = [
'var1' => 'value1',
'var4' => 'value4',
];
$client->request('GET', '/redirect/3', [
'query' => $params
]);
Run Code Online (Sandbox Code Playgroud)
这最终将我的请求的 URL 转换为:
/redirect/3?var1=value1&var4=value4
Run Code Online (Sandbox Code Playgroud)