在使用Guzzle进行请求时,可以使用try...catch语句来捕获异常并返回字符串。以下是一个示例代码:
use GuzzleHttp\Client;
use GuzzleHttp\Exception\RequestException;
try {
$client = new Client();
$res = $client->request('GET', 'http://example.com');
$body = $res->getBody();
echo $body;
} catch (RequestException $e) {
if ($e->hasResponse()) {
$response = $e->getResponse();
$body = $response->getBody()->getContents();
echo $body;
} else {
echo "请求出错:" . $e->getMessage();
}
}
在这个示例中,当请求出现异常时,我们会首先检查是否有响应返回。如果有,则获取响应的主体内容并将其作为字符串返回。如果没有响应,则直接返回错误消息。