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帮我实现了一个解决方案。