我正在尝试制作一个 Ajax 登录表单。我可以django.contrib.auth.authenticate通过将来自 ajax 帖子的用户名和密码传递给用户来对其进行身份验证。但是我怎样才能让他们设置一个实际的会话和 csrf,以便在随后的调用中我可以在 request.user 中获取用户?
谢谢
像往常一样添加,然后在您的 AJAX POST 等上{% csrf_token %}添加一个预请求回调函数beforeSend :
  beforeSend: function (request) {
   request.setRequestHeader("X-CSRFToken",
       $('input[name="csrfmiddlewaretoken"]').val());
   },
如果使用像TastyPie这样的 API 框架,您还有其他身份验证选项。见这里:我如何使用tastepie登录django