thể trùng lặp:
"CSRF token missing or incorrect" while post parameter via AJAX in DjangoJQuery + AJAX + Django = CSRF?
tôi muốn gửi dữ liệu đăng nhập bằng AJAX để xác thực người dùng, nhưng nó đã không thể thực hiện vì CSRF. Bạn có thể cho tôi biết cần thêm gì vào mã của tôi để làm cho nó hấp dẫn không?
tập tin JavaScript của tôi:
$("#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);
}
});
});
Tôi tin rằng bạn có thể tìm thấy câu trả lời của mình [ở đây] (https://docs.djangoproject.com/en/dev/ref/contrib/csrf/). Giải pháp đơn giản nhất có vẻ là vô hiệu hóa tính năng bảo vệ CSRF trên thể hiện django. Tùy chọn tốt nhất tiếp theo là cập nhật thông tin đăng nhập JavaScript của bạn để lấy mã thông báo CSRF của django từ biểu mẫu và bao gồm nó như một phần của yêu cầu AJAX. – aroth
Hãy xem câu trả lời trước của tôi. http://stackoverflow.com/questions/6506897/csrf-token-missing-or-incorrect-while-post-parameter-via-ajax-in-django/6533544#6533544 – sigurd