CakePHP 3安全组件和使用VueJS的表单字段

时间:2018-07-24 09:03:46

标签: php ajax cakephp vue.js cakephp-3.0

我正在使用Vue.js和CakePHP 3.6创建应用程序。

POST时,由于缺少 _Token 字段,安全组件将引发400错误。我没有CSRF令牌问题,只需进行安全性验证即可。

我不想在整个应用程序中禁用该组件。

我发现了一个非解决方案:从Cake \ View \ Helper \ SecureFieldTokenTrait中公开_buildFieldToken,但是我认为这可以避免SecurityComponent的目的。

任何帮助都受到欢迎和帮助。

1 个答案:

答案 0 :(得分:0)

您需要通过获取或axios访问的控制器中的操作(例如:ajaxRequest)可以在控制器中被解锁:

如果使用蛋糕助手生成了表单,则_CSRFTOKEN在表单标签或隐藏的输入中(对不起,请检查浏览器中的Form元素),对令牌进行本地化后,请将其添加到。$数据中post()。

ajax request cakephp

public function beforeFilter(Event $event)
{
     //this line is not necessary if you pass the _csrfToken
     $this->getEventManager()->off($this->Csrf);
     $this->Security->setConfig('unlockedActions', ['ajaxRequest']);
}