我想通过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); } }); });
这里介绍一种方法。
它包括在每个ajax请求上添加X-CSRFToken标头。
这是通过挂钩jQuery.ajaxSend事件来完成的,因此所有操作都是自动完成的(您只需复制并粘贴其代码,并在发出第一个ajax请求之前运行一次)。