动态创建CSRF令牌CakePHP 3

时间:2015-06-28 06:41:04

标签: cakephp cakephp-3.0

所以,我在AppController的初始化函数中启用了CSRF组件。但我有一个通过AJAX提交的函数,并从动态创建的输入中发送不在表单内的数据:

$('a#delete').on('click', function(e) {
    e.preventDefault();
    $.post($(this).attr('href'), $('input.delete:checked').serialize());
})

我想知道是否有办法为不在表单内的动态创建的输入创建CSRF令牌?

我已经阅读了有关Csrf组件的documentation,但它没有说明如何创建Csrf令牌,或者即使动态创建的输入未包含在表单中也是如此

1 个答案:

答案 0 :(得分:3)

在读取cookie值后,将_csrfToken添加为表单参数:

var csrf = $.cookie('crsf');
$.post($(this).attr('href'), $('input.delete:checked').serialize() + '&_csrfToken=' + csrf);