我有一个视图,我想使用ajax方法发布数据,但它没有进入视图来打印内容。
我的javascript代码:
$("#id").click(aa);
var aa= function() {
var id= $("#id");
$.ajax({
url: "ajax/id",
method: "POST",
data: { user: id, csrfmiddlewaretoken: csrftoken },
context: document.body
}).done(function(data) {
alert("Success");
}).fail(function(returnedText) {
console.log(returnedText.responseText);
});
};
我的Django视图:
def id(request):
print("aa");
users = request.POST['user']
我的URL:
path('/ajax/id', views.id, name='id')
发布于 2018-10-07 20:29:54
您可以改用请求标头
const Cookies = require('js-cookie');
(($) => {
const csrfSafeMethod = method => /^(GET|HEAD|OPTIONS|TRACE)$/.test(method);
$.ajaxSetup({
beforeSend(xhr, settings) {
if (!csrfSafeMethod(settings.method) && !this.crossDomain) {
xhr.setRequestHeader('X-CSRFToken', Cookies.get('csrftoken'));
}
},
});
})(window.jQuery);
错误是url使用url: "/ajax/id",
而不是url:"ajax/id",并且直接访问POST dict id
也是内置函数尝试重命名您的函数以避免遮盖内置函数。
users = request.POST.get('user')
你的path不会
https://stackoverflow.com/questions/52692042
复制相似问题