Объект POST json, но QueryDict пуст
Я хочу отправить obj на сервер Django, но QueryDict всегда пуст. На стороне клиента:
function makeRequest (method, url, data, datatype) {
function msg (err, datums) {
if (err) { throw err; }
console.log(datums);
}
var xhr = new XMLHttpRequest();
xhr.open(method, url,true);
// X-CSRFToken
xhr.setRequestHeader('X-CSRFToken', csrftoken);
xhr.setRequestHeader("Content-Type", datatype);
xhr.onload = function () {
msg(null, xhr.response);
};
xhr.onerror = function () {
msg(xhr.response);
};
xhr.send(data);
}
var params = {
"range":"Sheet1!A4:C4",
"majorDimension": "ROWS",
"values": [
["Hello World","123", "456"]
],
}
makeRequest('POST',
"http://127.0.0.1:8000/update_student/1/",JSON.stringify(params)
, 'application/json');
Серверная сторона:
def update_student(request,pk):
if request.method =="POST":
print("update_student entered")
breakpoint()
return HttpResponse("a post method", status=200)
else:
return HttpResponse("This should be a POST method", status=400)
Я проверил полезную нагрузку при отправке сообщения, она не пустая.