小编典典

jQuery + AJAX + Django = CSRF?

ajax

我想通过AJAX发送登录数据来对用户进行身份验证,但是由于CSRF,这是不可能的。您能否告诉我要添加到代码中以使其正常工作的内容?

我的JavaScript文件:

$("#login").live("click", function() {
    var username = $(".login_username").val();
    var password = $(".login_password").val();

    $.ajax({
        url: "/login",
        type: "POST",
        data: {
            username: username,
            password: password
        },
        cache: false,
        success: function(tekst) {
            alert(tekst);
        }
    });
});

阅读 199

收藏
2020-07-26

共1个答案

小编典典

这里介绍一种方法

它包括在每个ajax请求上添加X-CSRFToken标头。

这是通过挂钩jQuery.ajaxSend事件来完成的,因此所有操作都是自动完成的(您只需复制并粘贴其代码,并在发出第一个ajax请求之前运行一次)。

2020-07-26