标题无法完全解决我的问题,对不起。
我的Django模板中有三个Ajax函数。第一个发送评论请求,第二个向数据库更新值,第三个管理登录/注册过程。
所有这些都由一个按钮触发。如您所知,Django说过也对您的Ajax请求使用CSRF。所以,我这样使用:
function csrfSafeMethod(method) {
// these HTTP methods do not require CSRF protection
return (/^(GET|HEAD|OPTIONS|TRACE)$/.test(method));
}
var csrftoken = $('input[name=csrfmiddlewaretoken]').val();
$.ajaxSetup({
beforeSend: function(xhr, settings) {
if (!csrfSafeMethod(settings.type) && !this.crossDomain) {
xhr.setRequestHeader("X-CSRFToken", csrftoken);
}
}
});
此功能可以在一个模板中处理我所有的Ajax请求吗?我需要做额外的事情吗?