如何在谷歌浏览器中调试失败的ajax请求?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何在谷歌浏览器中调试失败的ajax请求?相关的知识,希望对你有一定的参考价值。

我有一个使用谷歌浏览器崩溃的ajax请求的Web应用程序(它适用于所有其他测试它的Web浏览器)。调试后我发现错误是由response.responseText未定义引起的。 xhr对象如下所示:

argument: undefined
isAbort: false
isTimeout: undefined
status: 0
statusText: "communication failure"
tId: 3

在“网络”选项卡的调试器中,我得到“(失败)”,但是所有的标题都存在,我甚至可以将响应主体(这是一个有效的JSON)复制到剪贴板中。

我的问题是 - 如何调试此问题?在哪里可以找到其他信息,导致此请求失败的原因是什么?

答案

我要仔细检查的第一件事是从响应中返回的数据是有效的JSON。只需将它传递给JSON验证器,如在线JSONLint:http://jsonlint.com/

我假设您正在使用类似jQuery的东西来制作您的AJAX请求。如果是这样,那么请确保您使用的是该库的开发版本。现在您正在使用脚本的开发版本(未压缩),找到您正在使用的特定函数(例如$ .ajax),然后在Chrome检查器中,在代码中插入一个断点,其中AJAX响应是第一个处理(例如,https://github.com/jquery/jquery/blob/master/src/ajax.js#L579)。然后继续逐步执行代码,检查各种返回值以查看确切的错误。

如果你没有使用类似jQuery的东西来进行AJAX调用,那么我建议使用一个框架来避免可能的跨浏览器兼容性问题,就像你现在可能遇到的那样。

另一答案

我终于找到了我的问题的解决方案:AdBlocks,当它阻止ajax请求时,它只是说“通信失败”。

以上是关于如何在谷歌浏览器中调试失败的ajax请求?的主要内容,如果未能解决你的问题,请参考以下文章

谷歌浏览器调试jsp 引入代码片段,如何调试代码片段中的js

为啥我的ajax在IE打开可以在谷歌和火狐打开就不响应请求

提问!同一ajax请求获取的图片路劲,在谷歌浏览器能正确展示图片,在火狐浏览器则显示路径undefined

干货分享如何在谷歌浏览器里正确下载并安装Postman一款功能强大的网页调试与发送网页HTTP请求的Chrome插件

如何通过ajax请求获得的json数据使用vue js在谷歌地图上标记经纬度?

如何调试nodejs程序 在谷歌浏览器