laravel怎么关闭csrf

青灯夜游
青灯夜游 原创
2021-12-21 11:34:07 1580浏览

方法:1、打开app下的“Kernel.php”文件,找到并注释掉“App\Http\Middleware\VerifyCsrfToken”代码。2、打开app下的“VerifyCsrfToken.PHP”文件,修改“$except”属性。

本教程操作环境:windows7系统、Laravel5版,DELL G3电脑。

用了laravel就会知道其中的csrf验证功能,如果post传值的时候,没有csrf_token就会报如下的错误:

1.png

这是因5.2之后的版本中会默认在路由里面添加 web 中间件。

在app/Http/Kernel.php文件中有如下配置:

2.png

全部关闭

到此,想必大家就知道了如何关闭这个验证了。就是将上图标注的这一行代码注释掉,这样就关闭了csrf验证,但这就全部关闭了


部分关闭

当我们写接口的时候,会遇到这样的问题:因为通过接口是无法传csrf_token的(csrf_token是在laravel中生成的),我们只想在api请求的时候关闭csrf验证,网站的后台不关闭。

这就需要去修改app\Http\Middleware\VerifyCsrfToken.php这个文件了

文件中有个属性$except,可以设置哪些路由不用做csrf验证,如下我想要api开头的路由都不做csrf验证,只需要添加 ‘api/*’ 就行了。

3.png

这样我访问 http://***/laravel/public/api/index 就不会报错了。

相关推荐:最新的五个Laravel视频教程

以上就是laravel怎么关闭csrf的详细内容,更多请关注php中文网其它相关文章!

声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。