如果你使用laravel,你会知道csrf认证功能。如果您在post中传递该值,您将在没有csrf_token的情况下报告以下错误:
这是因为在5.2之后的版本中,默认情况下会将web中间件添加到路由中。
app/Http/Kernel.php文件具有以下配置:
全部关闭
此时,每个人都必须知道如何关闭此验证。就是注释掉上图中标注的那一行代码,这样csrf验证就关闭了,但是全部关闭了。
部分关闭
我们在编写接口的时候会遇到这样一个问题:由于csrf_token无法通过接口传输(csrf_token是在laravel中生成的),所以我们只希望在api请求时关闭csrf认证,网站后台不关闭。
这需要修改文件应用程序 http 中间件 verifycsrftoken.php。
文件中有一个属性$except,可用于设置哪些路由不受csrf验证。如下,我希望api开头的所有路由都经过csrf验证,只需添加‘API/*’。
这样我就可以访问http://* * */laravel/public/API/index而不报错。
以上文章laravel实现关闭CSRF(全部关闭,部分关闭)是边肖分享的全部内容。希望能给大家一个参考,支持我们。