即使认为csrf保护被禁用,Laravel 5.1也会抛出csrf令牌不匹配异常

时间:2015-09-04 22:22:25

标签: php laravel csrf

我已经设置了登录/注册路由,特别是不使用csrf保护。表单没有csrf标记字段。我告诉Laravel不要在VerifyCsrfToken中间件中检查这些路由:

protected $except = [
        '/login',
        '/register'
    ];

    public function handle($request, Closure $next)
    {
        foreach ($this->except as $except) {
            if ($request->is($except)) {
                return $next($request);
            }
        }

        return parent::handle($request, $next);
    }

然而,在使用这些路线时,我得到了csrf异常。任何想法如何发生这种情况?

编辑:我还没有解决问题,但我注意到绕过csrf保护在本地环境中使用相同的代码库,但在我们的暂存环境中不起作用。这很奇怪。如果有人有理论,请告诉我,谢谢。

1 个答案:

答案 0 :(得分:1)

只需删除前导斜杠即可 所以而不是

protected $except = [
    '/login',
    '/register'
];

把这个

protected $except = [
    'login',
    'register'
];

希望有所帮助