laravel 5在哪里处理ValidationException?

法兹·艾哈迈德(Faiz Ahmed)

如果传入请求是AJAX请求,则不会生成任何重定向。相反,带有422状态代码的HTTP响应将返回到浏览器,其中包含验证错误的JSON表示形式。

这是行不通的!我正在尝试通过ajax请求访问路由,并将其重定向回去。

如果验证通过,您的代码将继续正常执行。但是,如果验证失败,则将抛出Illuminate \ Contracts \ Validation \ ValidationException。该异常会自动捕获,并会重定向到用户的先前位置。验证错误甚至会自动闪烁到会话中!

现在我想知道laravel在哪里捕获此异常,以便可以对其进行修改?

劳伦斯

这在FormRequest类中处理:

protected function failedValidation(Validator $validator)
{
    throw new HttpResponseException($this->response(
        $this->formatErrors($validator)
    ));
}

您可以在自己的Request对象中覆盖此函数,并以任意方式处理验证失败。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章