纯净、安全、绿色的下载网站

首页|软件分类|下载排行|最新软件|IT学院

当前位置:首页IT学院IT技术

Laravel验证跳转到首页 解决Laravel使用验证时跳转到首页的问题

PHP是宇宙中最好的语言   2021-10-09 我要评论
想了解解决Laravel使用验证时跳转到首页的问题的相关内容吗,PHP是宇宙中最好的语言在本文为您仔细讲解Laravel验证跳转到首页的相关知识和一些Code实例,欢迎阅读和指正,我们先划重点:Laravel验证跳转到首页,Laravel验证,下面大家一起来学习吧。

当我们在使用validate等方法进行验证时,如果是错误,则会返回首页

1、直接在请求头中

在请求头header中,accept使用appclication/json,使HTTP请求的接受返回只能是json格式。

2、修改框架函数

//vendor/laravel/framework/src/Illuminate/Foundation/Http/FormRequest.php:136
//将该方法中的$this->getRedirectUrl()去掉
//不建议使用,一般情况下尽量不要修改框架的代码

3、建议使用

定义一个BaseRequest基类

<?php
    
namespace App\Http\Requests;
 
use Illuminate\Contracts\Validation\Validator;
use Illuminate\Foundation\Http\FormRequest;
use Illuminate\Http\Exceptions\HttpResponseException;
 
class BaseRequests extends FormRequest
{
    /**
     * validate验证失败模板
     * @param Validator $validator
     */
    protected function failedValidation(Validator $validator)
    {
        $message = '';
        foreach (json_decode(json_encode($validator->errors()),1) as $error){
            $message = $error[0];
            break;
        }
        throw (new HttpResponseException(response()->json([
            'code' => 400,
            'msg'  => $message,
            'data' => []
        ])));
    }
}

个人认为这个方法一言难尽,不是很好。

4、最终我使用的解决办法

在JSON请求时,头部的Accept指定为appliaction/json即可解决,当为JSON访问时,则返回错误信息正常,非JSON时返回首页,一定程度也是一个保护呢。


相关文章

猜您喜欢

  • vue3.0 watch侦听器 vue3.0中的watch侦听器实例详解

    想了解vue3.0中的watch侦听器实例详解的相关内容吗,Youyzq在本文为您仔细讲解vue3.0 watch侦听器的相关知识和一些Code实例,欢迎阅读和指正,我们先划重点:vue3.0,watch侦听器,vue中的watch监听,vue监听事件watch,下面大家一起来学习吧。..
  • python范围曲线 python绘制浅色范围曲线的代码实例

    想了解python绘制浅色范围曲线的代码实例的相关内容吗,岐伯在本文为您仔细讲解python范围曲线的相关知识和一些Code实例,欢迎阅读和指正,我们先划重点:python浅色范围曲线,python范围曲线,下面大家一起来学习吧。..

网友评论

Copyright 2020 www.zeLdagames.net 【行业软件站】 版权所有 软件发布

声明:所有软件和文章来自软件开发商或者作者 如有异议 请与本站联系 点此查看联系方式