2017-07-03 87 views
0

IM,问题是我禁用CSRF验证我的JSON请求是这样的:CakePHP的2.x和CSRF令牌

$this->Security->unlockedActions = array('do_json'); 

是否可以删除unlockedActions码来自beforefilter并在json请求中集成csrf验证以及其他非json动作。

在此先感谢。

回答

0

你很可能需要禁用POST数据验证,除非您的请求将包含来自已建成与表单辅助形式的数据:

$this->Security->validatePost = false; 

然后你必须包括CSRF令牌您的请求POST数据。生成的令牌可以在请求参数中找到为_Token.key

$this->request->param('_Token.key') 
// or 
$this->request->params['_Token']['key'] 

,需要提交的_Token.key也即

{ 
    "_Token": { 
     "key": "keyValue" 
    } 
} 

又见

+0

非常感谢你 – user1655410