您的位置:首页 > Web前端 > JQuery

rails中开启了csrf防御如何使用jquery的ajax请求

2012-04-12 14:26 1176 查看
$.ajaxSetup({
beforeSend: function(xhr) {
xhr.setRequestHeader("X-CSRF-Token", $("meta[name=\"csrf-token\"]").attr("content"));
}
});

其实这个设置是多余的,因为翻一下jquery_ujs 也即时rails.js的源码你会发现:
// Make sure that every Ajax request sends the CSRF token
CSRFProtection: function(xhr) {
var token = $('meta[name="csrf-token"]').attr('content');
if (token) xhr.setRequestHeader('X-CSRF-Token', token);
}


所以只要你不在application.js中去掉jquery_ujs或者你不使用assets而你引入jquery和rails.js 那么根本不需要任何设置都没有关系 就可以直接使用jquery的ajax功能。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: