Php Laravel-CSRF保护不工作

Php Laravel-CSRF保护不工作,php,laravel,filter,controller,Php,Laravel,Filter,Controller,因此,我有一个RESTful控制器,这意味着我必须在控制器中定义CSRF过滤器的使用。我已经查看了它是如何工作的,我很确定我所拥有的应该是有效的。遗憾的是,即使我从表单中删除了令牌,它仍然提交得很好,并且没有出错。以下是我的控制器的构造函数: $this->beforeFilter('csrf', array('only' => 'post')); $teams = Team::all(); $streamers = Streamer::all(); View::share('t

因此,我有一个RESTful控制器,这意味着我必须在控制器中定义CSRF过滤器的使用。我已经查看了它是如何工作的,我很确定我所拥有的应该是有效的。遗憾的是,即使我从表单中删除了令牌,它仍然提交得很好,并且没有出错。以下是我的控制器的构造函数:

$this->beforeFilter('csrf', array('only' => 'post'));

$teams = Team::all();
$streamers = Streamer::all();

View::share('teams', $teams);
View::share('streamers', $streamers);
在我的表单中,我只是简单地使用{{form::token()}},即使我已经删除了它,它仍然有效。

改变这个

$this->beforeFilter('csrf', array('only' => 'post'));
对此

$this->beforeFilter('csrf', array('on' => 'post'));
解释

除外
用于控制器方法(索引、显示、更新等),而
on
用于HTTP方法(post、get、put、delete)

编辑


如果仍不工作,则粘贴CSRF过滤器(如果已编辑)。还要确保你走的是正确的路线。如果您在BaseController中定义了beforeFilter,请确保您的其他控制器在控制器中包含
父项::\u construct()
(如果存在)。

在没有令牌的情况下仍然可以提交。显然,默认情况下会将令牌添加到任何表单中,因此它仍然提交有效令牌。