我有将post
数据发送到django服务器并使用ajax从其中获取数据的代码。当我使用post方法时,服务器会以Bad Request: /quizzes/
[29/Apr/2019 18:13:42] "POST /quizzes/ HTTP/1.1" 400 83
进行响应
并且在ajax代码中不返回任何信息,也不是错误也不完整。
当我尝试get
来自服务器的数据时,服务器说可以
[29/Apr/2019 18:19:57] "GET /quizzes/ HTTP/1.1" 200 249
但是代码只输入了错误,并完成了包含错误消息的块,仅出现“状态错误:错误”
另一个问题是当请求结束时,我的Firefox重新加载了页面,但我不知道为什么
那么有人可以提出解决这些问题的建议吗?!
这是我的post
方法的Ajax代码,没有响应
服务器期望以这种格式接收json对象
{
'title': "superheroes java",
'pass_score': 1,
'num_of_questions': 3,
'expected_duration': 10,
'skill_type': {"name": "java"},
}
这是我格式化和发送的方式
$("#add-quiz").click(function () {
quizData = {
title: $("#quizTitle").val(),
pass_score: Number($("#quizPassScore").val()),
num_of_questions: Number($("#quizNumQuestions").val()),
expected_duration: Number($("#quizDuration").val()),
skill_type: {name: $("#quizSkillType").val()}
};
response = ""
$.ajax({
url: "http://127.0.0.1:8001/quizzes/",
dataType: "json",
method: "POST",
data: quizData,
success: function () {
response = "success";
}, error: function (jqXHR, textStatus, errorThrown) {
console.log(jqXHR, textStatus, errorThrown);
}, complete: function (request, status) {
alert("Error with status: " + status);
}
});
alert(response);
});
这是get
方法,它表示Error with status: error
response = "";
$.ajax({
url: "http://127.0.0.1:8001/quizzes/",
method: "GET",
success: function (data) {
response = data;
}, error: function (XMLHttpRequest, textStatus, errorThrown) {
console.log("Status: " + textStatus + "Error: " + errorThrown);
}, complete: function (request, status) {
console.log("Error with status: " + status);
}
});
alert(response);
我只是使用respone
进行进一步的测试