突然遇到的问题  就是使用Laravel进行开发API接口的时候  发现在表单验证不通过的时候返回了登录页

猜测问题应该是因为表单验证失败后进行了重定向导致的 因为返回状态码200

 

网上找了好久没找到相关解决方案

只能自己猜测一下解决问题

我在app\Http\Controller\Controller.class.php里面重写了validate这个方法

public function validate($request, $rules, $message){
        $Validator = Validator::make($request->all(),$rules,$message);
        if($Validator->fails()){
            $result = [];
            foreach(json_decode(json_encode($Validator->errors()),true) as $k => $v){
                $result[$k] = $v[0];
            }
            echo json_encode($result);
            die;
        }
    }

然后返回结果示例

{
  "mobile": "请输入手机号",
  "password": "请输入密码"
}

 

以上只是我自己没办法的解决方案  希望有人能给出一个更好的解决方案  或者指出错误进行改正  谢谢

版权声明:本文为Gasg原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://www.cnblogs.com/Gasg/p/9796269.html