gpt4 book ai didi

php - 表单验证异常未被 laravel 5.1 中的异常捕获?

转载 作者:行者123 更新时间:2023-12-04 16:31:29 26 4
gpt4 key购买 nike

在 laravel5 中,我在 app/Exceptions/Handler@render 函数中捕获了所有错误并且它工作正常。代码如下,

     public function render($request, Exception $e) {
$error_response['error'] = array(
'code' => NULL,
'message' => NULL,
'debug' => NULL
);
if ($e instanceof HttpException && $e->getStatusCode() == 422) {
$error_response['error']['code'] = 422;
$error_response['error']['message'] = $e->getMessage();
$error_response['error']['debug'] = null;
return new JsonResponse($error_response, 422);
}
}
return parent::render($request, $e);
}

但在 laravel5.1 中,当表单验证失败时,它会抛出 422 异常的错误信息。但它不是从 app/Exceptions/Handler@render 捕获,而是与 abort(422) 一起正常工作。

我该如何解决这个问题?

最佳答案

你可以简单地通过做来捕捉

public function render($request, Exception $e) {
if($e instanceof ValidationException) {
// Your code here
}
}

关于php - 表单验证异常未被 laravel 5.1 中的异常捕获?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31217541/

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