laravel 实现关闭CSRF(全部关闭、部分关闭)
用了laravel就会知道其中的csrf验证功能,如果post传值的时候,没有csrf_token就会报如下的错误:
这是因5.2之后的版本中会默认在路由里面添加 web 中间件。
在app/Http/Kernel.php文件中有如下配置:
全部关闭
到此,想必大家就知道了如何关闭这个验证了。就是将上图标注的这一行代码注释掉,这样就关闭了csrf验证,但这就全部关闭了。
部分关闭
当我们写接口的时候,会遇到这样的问题:因为通过接口是无法传csrf_token的(csrf_token是在laravel中生成的),我们只想在api请求的时候关闭csrf验证,网站的后台不关闭。
这就需要去修改app\Http\Middleware\VerifyCsrfToken.php这个文件了
文件中有个属性$except,可以设置哪些路由不用做csrf验证,如下我想要api开头的路由都不做csrf验证,只需要添加 ‘api/*' 就行了。
这样我访问 http://***/laravel/public/api/index 就不会报错了。
以上这篇laravel 实现关闭CSRF(全部关闭、部分关闭)就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持我们。
相关推荐
-
laravel csrf排除路由,禁止,关闭指定路由的例子
百度了下,发现别的教程里需要更改文件,实际上很简单,官方提供了接口可以用来设置; laravel的csrf防范是通过app/http/Middleware目录下的中间件VerifyCsrfToken.php来生效的,如下所示在官方的代码 有个属性$except,可以专门用来设置哪些路由不用做csrf验证: <?php namespace App\Http\Middleware; use Illuminate\Foundation\Http\Middleware\VerifyCsrfToken a
-
laravel 实现关闭CSRF(全部关闭、部分关闭)
用了laravel就会知道其中的csrf验证功能,如果post传值的时候,没有csrf_token就会报如下的错误: 这是因5.2之后的版本中会默认在路由里面添加 web 中间件. 在app/Http/Kernel.php文件中有如下配置: 全部关闭 到此,想必大家就知道了如何关闭这个验证了.就是将上图标注的这一行代码注释掉,这样就关闭了csrf验证,但这就全部关闭了. 部分关闭 当我们写接口的时候,会遇到这样的问题:因为通过接口是无法传csrf_token的(csrf_token是在larav
-
解决python父线程关闭后子线程不关闭问题
我们都知道,python可以通过threading module来创建新的线程,然而在创建线程的线程(父线程)关闭之后,相应的子线程可能却没有关闭,这可能是因为代码中没有使用setDaemon(True)函数. 接下来,使用一个例子来说明: import threading def prt_hello() : while 1 : print 'hello' if __name__ == '__main__' : t = threading.Thread(target=prt_hello) t.s
-
Vue 实现监听窗口关闭事件,并在窗口关闭前发送请求
网上很多博客说监听窗口关闭事件使用window.beforeunload,但是这个监听事件也会在页面刷新的时候执行,经过百度和自己的实际测试, 终于解决了这个问题,代码如下: mounted() { window.addEventListener('beforeunload', e => this.beforeunloadHandler(e)) window.addEventListener('unload', e => this.unloadHandler(e)) }, destroyed(
-
js父窗口关闭时子窗口随之关闭完美解决方案
最近,遇到一个权限管理的系统.由于权限管理的系统和本来的系统风格不一致,所有新打开一个窗口.问题就来了,admin注销之后,权限管理的窗口没有关闭.其他普通用户登录以后,仍然可以操作权限管理的窗口. 问题简化:admin注销的时候,或者main.html关闭的时候,打开的所有新窗口一起关闭.问题就解决了 直接看代码吧: 复制代码 代码如下: <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "h
-
javascript在当前窗口关闭前检测窗口是否关闭
在当前窗口关闭前,检测当前窗口是否关闭 <pre name="code" class="html"><pre name="code" class="html"><HTML><HEAD> <script Language="JavaScript"> window.onbeforeunload=function(event){ alert("
-
yii2局部关闭(开启)csrf的验证的实例代码
上一节主要是简单地说了一下关于yii2的防御csrf的攻击机制,接下来说一下关于如何全局和局部的开启使用csrf. (1)全局使用,我们直接在配置文件中设置enableCookieValidation为true request => [ 'enableCookieValidation' => true, ] 如果不需要使用csrf的话,设置'enableCookieValidation' => false,但是这是不安全的,因此yii2的yii\web\request中的enableCo
-
js关闭当前页面(窗口)的几种方式总结
1. 不带任何提示关闭窗口的js代码 复制代码 代码如下: <a href="javascript:window.opener=null;window.open('','_self');window.close();">关闭</a> 2.自定义提示关闭 复制代码 代码如下: <script language="javascript">// 这个脚本是 ie6和ie7 通用的脚本function custom_close(){if
-
JS关闭窗口与JS关闭页面的几种方法小结
第一种:JS定时自动关闭窗口<script language="javascript"><!--function closewin(){self.opener=null;self.close();}function clock(){i=i-1document.title="本窗口将在" + i + "秒后自动关闭!";if(i>0)setTimeout("clock();",1000);else clo
-
报错:XML页无法显示,下列标记没有被关闭解决方法
从数据库读出数据,然后以XML的格式显示数据,但是提示hd,category,subsort等没有关闭,可是我已经关闭了呀,不知道具体是什么原因造成了这个问题? VB code: 复制代码 代码如下: <% response.ContentType= "text/xml" Response.CharSet = "GB2312" Response.Expires = 0 Response.write "<?xml version="&q
随机推荐
- iisschlp.wsc [88,25] 属性值无效 : progid
- Shell脚本中的特殊字符(美元符、反斜杠、引号等)作用介绍
- JavaScript和HTML DOM的区别与联系及Javascript和DOM的关系
- asp.net中Fine Uploader文件上传组件使用介绍
- SpringBoot连接MYSQL数据库并使用JPA进行操作
- Oracle中instr函数使用方法
- python去掉字符串中重复字符的方法
- window.open()弹出居中的窗口
- ThinkPHP 3.2 数据分页代码分享
- thinkphp框架下404页面设置 仅三步
- php+mysql实现无限分类实例详解
- MySQL中日期比较时遇到的编码问题解决办法
- js实现tab选项卡切换功能
- 浅谈jQuery中的checkbox问题
- 严防死守,保卫IE
- 23种设计模式(3) java原型模式
- 详述IntelliJ IDEA插件的安装及使用方法(图解)
- java中staticclass静态类详解
- PHP实现的消息实时推送功能【基于反ajax推送】
- spring springMVC中常用注解解析