时间:2021-05-26
laravel 框架中默认的validate验证,在处理错误的时候,默认是返回上一页,当为ajax的时候才会返回Json。如果我们要一直返回Json的话,那么需要重写错误处理
如下:在Requests目录只用 新建BaseRequest类
代码如下
<?php/** * @文件名称: BaseRequest.php. * @author: daisc * @email: jiumengfadian@live.com * @Date: 2019/1/8 */namespace App\Http\Requests\Front;use Illuminate\Foundation\Http\FormRequest;use Illuminate\Http\Exceptions\HttpResponseException;class BaseRequest extends FormRequest{ public function failedValidation($validator) { $error= $validator->errors()->all(); // $error = $validator; throw new HttpResponseException(response()->json(['code'=>1,'message'=>$error[0]])); }}重写了failedValidation方法,将抛出错误处理为了json格式的。
然后在自定义的处理验证类中,继承该类就行了,
如:RegisterForm中
<?phpnamespace App\Http\Requests\Front;class RegisterForm extends BaseRequest{ /** * Determine if the user is authorized to make this request. * * @return bool */ public function authorize() { return true; } /** * Get the validation rules that apply to the request. * * @return array */ public function rules() { return [ 'phone'=>'required|regex:"^1\d{10}"', 'email' => 'required|email', 'password'=>'required|confirmed' ]; } public function messages() { return [ 'phone.required'=>'手机号不能为空', 'phone.regex'=>'请输入正确的手机号', ]; }}当我们在控制器中调用RegisterForm的时候,就回返回Json格式的错误信息。
不分是否是AJAX
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
本文实例讲述了Laravel框架基于自带的用户系统实现登录注册及错误处理功能。分享给大家供大家参考,具体如下:一、默认Laravel不会自动帮你装上用户系统,二
在PHP中,默认的错误处理很简单。一条错误消息会被发送到浏览器,这条消息带有文件名、行号以及描述错误的消息。PHP错误处理在创建脚本和Web应用程序时,错误处理
介绍在后端项目里比如我们的Laravel框架对于表单验证有自己的一套validation机制他将验证集成在FormRequest我们只需要在我们的方法中依赖注入
本教程介绍了PHP中一些最为重要的错误检测方法。我们将为您讲解不同的错误处理方法:简单的"die()"语句自定义错误和错误触发器错误报告基本的错误处理:使用di
VBA中错误捕捉的方法主要有两种 第一种捕捉方法: 1、语法: OnErrorGoToErr_Handle'如果遇到错误就跳转到错误处理代码