Django会允许一个包含csrf的AjaxSetup允许来自多个Ajax函数的请求吗?

时间:2018-08-01 18:31:24

标签: ajax django

标题无法完全解决我的问题,对不起。

我的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请求吗?我需要做额外的事情吗?

0 个答案:

没有答案