GuzzleHttp 获取响应后获取请求参数 - 详细代码示例
以下是使用 GuzzleHttp 获取响应后获取请求参数的详细代码示例:
require 'vendor/autoload.php';
use GuzzleHttp\Client;
$client = new Client();
// 发起请求
$response = $client->request('GET', 'https://jsonplaceholder.typicode.com/posts', [
'query' => [
'userId' => 1
]
]);
// 获取响应内容
$body = $response->getBody()->getContents();
// echo $body;
// 获取请求参数
$query = $response->getRequest()->getQuery();
var_dump($query);
在这个示例代码中,我们使用了 GuzzleHttp 发起了一个 GET 请求,并且给了一个 'query' 参数。然后我们通过 $response->getBody()->getContents() 获取了响应内容,并且通过 $response->getRequest()->getQuery() 获取了请求参数。
注意:
-
$response->getRequest()->getQuery()方法仅适用于 GET 请求,如果使用 POST 请求,则需要使用$response->getRequest()->getPostParams()方法获取请求参数。 -
如果代码报错
Fatal error: Uncaught Error: Call to a member function getQuery() on null,可能是因为在发起请求时没有传递query参数,或者请求不是 GET 请求。
希望这个示例代码能够帮助你解决问题。
原文地址: https://www.cveoy.top/t/topic/nmcD 著作权归作者所有。请勿转载和采集!