• 企业400电话
  • 微网小程序
  • AI电话机器人
  • 电商代运营
  • 全 部 栏 目

    企业400电话 网络优化推广 AI电话机器人 呼叫中心 网站建设 商标✡知产 微网小程序 电商运营 彩铃•短信 增值拓展业务
    Laravel框架FormRequest中重写错误处理的方法

    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

    ?php
    
    namespace 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

    以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

    您可能感兴趣的文章:
    • Laravel中使用FormRequest进行表单验证方法及问题汇总
    • Laravel框架表单验证详解
    • Laravel 5框架学习之表单验证
    • Laravel 4 初级教程之Pages、表单验证
    • laravel5.2表单验证,并显示错误信息的实例
    • Laravel框架表单验证格式化输出的方法
    • Laravel框架表单验证操作实例分析
    • Laravel5.1 框架表单验证操作实例详解
    • laravel框架使用FormRequest进行表单验证,验证异常返回JSON操作示例
    上一篇:php原生数据库分页的代码实例
    下一篇:PHP调用全国天气预报数据接口查询天气示例
  • 相关文章
  • 

    © 2016-2020 巨人网络通讯 版权所有

    《增值电信业务经营许可证》 苏ICP备15040257号-8

    Laravel框架FormRequest中重写错误处理的方法 Laravel,框架,FormRequest,中,