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

admin3年前PHP教程37

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

1、直接在请求头中

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

2、修改框架函数?

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






3、建议使用

定义一个BaseRequest基类

?

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
<?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时返回首页,一定程度也是一个保护呢。

到此这篇关于Laravel使用验证时跳转到首页的解决办法的文章就介绍到这了,更多相关Laravel验证跳转到首页内容请搜索服务器之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持服务器之家!

原文链接:blog.csdn/woshissss/article/details/120397036

免责声明:本文内容来自用户上传并发布,站点仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。请核实广告和内容真实性,谨慎使用。

相关文章

如何使用Zephir轻松构建PHP扩展

简介比如,在 PHP 中需要与 SQLite3 交互,我们可以自己写方法与之进行连接,再写 SQL 语句请求数据。然而,这都是些既琐碎又重复度相当高的工作,因此,所有开发者对插件的需求呼之欲出。现在,...

香港高防服务器推荐选择什么配置好

香港高防服务器推荐选择什么配置好?选择高防服务器的配置应该根据您的具体需求和预算来决定。以下是一些常见的建议:带宽:选择足够的带宽,以确保您的网站或应用程序能够处理高流量。处理器:选择高性能的处理器,...

php和java区别是什么(php可以直接用浏览器打开)

php和java区别是什么首先从概念上区分,Java是一门面向对象编程言语,具有简单性、面向对象、分布式、健壮性、安全性、平台独立与可移植性、多线程、动态性等特性;PHP是一种通用开源脚本言语,语法吸...

php artisan命令信息列举

php artisan 命令列表命令获取上面的翻译内容命令  说明  备注php artisan make:resource ? 创建api返回格式化资源  &...

马来西亚服务器租用需要去国外吗?

马来西亚服务器租用需要去国外吗?不一定需要去国外租用马来西亚服务器。许多公司和服务提供商在马来西亚境内拥有数据中心和服务器,并提供租用计划。你可以通过互联网搜索或咨询IT服务提供商了解更多信息。如果你...

泉州高防服务器租用都有哪些优点

租用泉州高防服务器有以下几个优点:提供更高的防御能力:高防服务器通常配备有专业的防御系统,可以有效地抵御各种攻击,例如DDoS攻击、CC攻击、SQL注入等等。保证网站的稳定性和可用性:高防服务器可以保...