【发布时间】:2017-08-16 10:37:45
【问题描述】:
环境:express 4、jquery、krakenjs、font-awesome
在控制器/产品/index.js 中
module.exports = function (router) {
router.post('/add',function(req,res){
// do something
});
};
在html文件中,用户点击图标,将产品加入购物车
{?products}
{#products}
<ul id="{.id}">
<li class="add"><i class="fa fa-plus"></i></li>
</ul>
{/products}
{/products}
对于每个产品,下面的脚本是做ajax post到后端的。
$('.add').click(function(e){
var _id = this.parentElement.id;
$.ajax({
url: "/products/add",
type: 'POST',
contentType: 'application/json',
dataType: 'json',
data: JSON.stringify({
id: _id
})
});
});
服务器然后响应 500(内部服务器错误)并声明“错误:CSRF 令牌不匹配”。在没有提交表单的情况下进行 ajax 调用时,我是否需要在 ajax 帖子中插入 csrf 令牌或消除令牌验证。
【问题讨论】:
标签: jquery ajax node.js csrf kraken.js