gpt4 book ai didi

php - 处理 Guzzle 异常并获取 HTTP 正文

转载 作者:IT老高 更新时间:2023-10-28 11:51:47 40 4
gpt4 key购买 nike

当服务器返回 4xx 和 5xx 状态代码时,我想处理来自 Guzzle 的错误。我提出这样的要求:

$client = $this->getGuzzleClient();
$request = $client->post($url, $headers, $value);
try {
$response = $request->send();
return $response->getBody();
} catch (\Exception $e) {
// How can I get the response body?
}

$e->getMessage 返回代码信息,但不返回 HTTP 响应的正文。如何获取响应正文?

最佳答案

Guzzle 6.x

根据 the docs ,您可能需要捕获的异常类型有:

  • GuzzleHttp\Exception\ClientException 用于 400 级错误
  • GuzzleHttp\Exception\ServerException 用于 500 级错误
  • GuzzleHttp\Exception\BadResponseException(这是它们的父类(super class))

处理此类错误的代码现在看起来像这样:

$client = new GuzzleHttp\Client;
try {
$client->get('http://google.com/nosuchpage');
}
catch (GuzzleHttp\Exception\ClientException $e) {
$response = $e->getResponse();
$responseBodyAsString = $response->getBody()->getContents();
}

关于php - 处理 Guzzle 异常并获取 HTTP 正文,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19748105/

40 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com