laravel 默认验证不通过后响应格式如下,有时此格式并不满足自己要求,需要修改格式。
// status 422{ "message":"the given data was invalid.", "errors":{ "url":[ "url 无效的格式" ] }}
当 request 验证失败时会抛出 validationexception
异常,最终交由全局异常handler
类处理。handler
继承自illuminate\foundation\exceptions\handler
,框架中的handler
类调用render
处理异常并进行响应,针对于validationexception
异常又调用了convertvalidationexceptiontorespon
方法来处理。代码
protected function convertvalidationexceptiontorespon(validationexception $e, $request){ if ($e干咳怎么治最快最有效->respon) { return $e->respon; } return $request->expectsjson() ? $this->invalidjson($request, $e) : $this->invalid($request, $e);}
expectsjson()
区分是 ajax 请求还是表单请求,然后分别做处理。
protected function inv广东理工职业技术学院alidjson($request, validationexception $exception){ return respon()->json([ 'message' => $exception->getmessage(), 'errors'dnf任务攻略 => $exception->errors(), ], $exception->status);}
追踪到invalidjson()
,发现他就是用来处理参数验证异常响应格式的方法。在app\exceptions\handler
类中,重写invalidjson()
方法即可。
protected 选择透过性function invalidjson($request, validationexception $exception){ return respon()->json([ 'code' => 0, 'data' => $exception->errors(), ], $exception->status);}
最终,验证失败的响应格式如下
// status 422{ "code": 0, "data":{ "url":[ "url 无效的格式" ] }}
总结
到此这篇关于larave抱团游戏规则l 修改验证异常的响应格式的代码详解的文章就介绍到这了,更多相关laravel异常响应格式内容请搜索www.887551.com以前的文章或继续浏览下面的相关文章希望大家以后多多支持www.887551.com!
本文发布于:2023-04-08 18:05:59,感谢您对本站的认可!
本文链接:https://www.wtabcd.cn/fanwen/zuowen/8b27d00193e0926ace573ab4730d9e46.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文word下载地址:Laravel 修改验证异常的响应格式实例代码详解.doc
本文 PDF 下载地址:Laravel 修改验证异常的响应格式实例代码详解.pdf
留言与评论(共有 0 条评论) |