gpt4 book ai didi

Laravel 在 Laravel 之前捕获错误

转载 作者:行者123 更新时间:2023-12-04 23:19:38 25 4
gpt4 key购买 nike

我正在使用 Laravel 5.1 和 Guzzle 发送 API 请求。

我有两个函数,一个用于获取一个人,第二个用于检索有关该人的数据,因为每个函数都是一个单独的请求。

如果没有找到任何一个 404 响应代码,就会被 Laravel 发回并获取。

然而,来自函数 1 的 404 响应与来自函数 2 的响应具有不同的含义,即使它们是相同的响应代码和异常,但很麻烦。

我试图在 Controller 中捕获该方法的错误,希望它能在 laravel 异常处理程序执行之前捕获它,但它似乎不起作用并被处理程序捕获。

如何在 Laravel 异常处理程序之前捕获 Controller 中的异常?

最佳答案

在 Controller 的顶部添加:

use GuzzleHttp\Exception\RequestException;

将您的请求包裹在 try catch 中,如下所示:
try {
$client->get('https://github.com/_abc_123_404');
} catch (RequestException $e) {
echo $e->getRequest();
if ($e->hasResponse()) {
echo $e->getResponse();
}
}

你可以捕获任何 Guzzle 异常,如果你只想捕获 404,那么你可以尝试使用 ClientException在你的 Controller 的顶部,捕获它,这个异常扩展了 BadResponseException依次扩展 RequestException .见 documentation了解更多详情。

关于Laravel 在 Laravel 之前捕获错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31204883/

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