jQuery.ajax() 错误,textStatus=error
jQuery.ajax() error with textStatus=error
我使用的 jQuery.ajax()
函数在大多数情况下都能正常工作。但是有时它不返回任何数据。而是调用 error()
函数。
$.ajax({
[...]
, error: function(jqXHR, textStatus, errorThrown) {
console.log(jqXHR);
console.log(textStatus);
console.log(errorThrown);
}
});
我可以在那里看到在那些情况下 textStatus
是 'error'
而 errorThrown
是 ''
(空)。
jQuery documentation 只是列出了 textStatus
的可能值("timeout"
、"error"
、"abort"
和 "parsererror"
)。但是它没有描述 'error'
是什么意思。
jqXHR
returns 一个对象,但它没有接缝以揭示任何其他见解。
如何调查此问题的根源?
我建议您使用 fiddler 来监视请求并分析您得到的响应。
要尝试的另一件事是在 fiddler composer 中编写您的 ajax 请求。这样你就可以确定你是否通过了所有要求的headers。
您将在 fiddler 中找到更多详细信息。
正如 KidA 在评论中所说,试试这个:
console.log(jqXHR.status);
此外,只需确保您从正确的目的地(url、列表名称等)拉取数据以及正确的数据类型(POST、GET、UPDATE、DELETE 等) .)
发现只要在浏览器中按下重新加载,ajax 请求仍然是 运行。
This post帮我实现了一个解决方案。
我使用的 jQuery.ajax()
函数在大多数情况下都能正常工作。但是有时它不返回任何数据。而是调用 error()
函数。
$.ajax({
[...]
, error: function(jqXHR, textStatus, errorThrown) {
console.log(jqXHR);
console.log(textStatus);
console.log(errorThrown);
}
});
我可以在那里看到在那些情况下 textStatus
是 'error'
而 errorThrown
是 ''
(空)。
jQuery documentation 只是列出了 textStatus
的可能值("timeout"
、"error"
、"abort"
和 "parsererror"
)。但是它没有描述 'error'
是什么意思。
jqXHR
returns 一个对象,但它没有接缝以揭示任何其他见解。
如何调查此问题的根源?
我建议您使用 fiddler 来监视请求并分析您得到的响应。
要尝试的另一件事是在 fiddler composer 中编写您的 ajax 请求。这样你就可以确定你是否通过了所有要求的headers。
您将在 fiddler 中找到更多详细信息。
正如 KidA 在评论中所说,试试这个:
console.log(jqXHR.status);
此外,只需确保您从正确的目的地(url、列表名称等)拉取数据以及正确的数据类型(POST、GET、UPDATE、DELETE 等) .)
发现只要在浏览器中按下重新加载,ajax 请求仍然是 运行。
This post帮我实现了一个解决方案。