【发布时间】:2014-05-19 22:00:14
【问题描述】:
我喜欢 Firefox 中 Firebug 的一个特性是它显示正在进行的 AJAX 请求(在它们完成之前)。但是,Chrome 在完成之前不会显示请求。有没有办法使用 Chrome 开发者工具查看待处理(正在进行的)网络请求?我想尽快确定任何导致延迟的 AJAX 请求。在某些情况下,一个错误的请求可能需要 15 或 30 秒,等待那么久才知道发生了什么是没有意义的。
请注意:我可以看到网络请求。我的问题不是如何查看网络请求。
编辑:我必须更正我上面的声明,即 Chrome 不会显示待处理的请求。它确实向他们展示了。具体问题是 pending ajax 请求没有显示在 Network->XHR 面板中;他们只在完成后显示在那里。 Network->All 面板确实显示了未决的 XHR 请求。
【问题讨论】:
-
我刚刚测试过,因为我发现它很奇怪,并且我的 chrome 开发者工具中的
Network选项卡在发送后立即显示我的请求,而不是等待响应。您确定您在 chrome 中没有 javascript 问题,只是导致该浏览器根本不发送请求吗? -
我不这么认为。您正在查看的最慢的 ajax 请求是什么? (也许您太快看不到它是在进行中还是完成)是否有任何迹象表明请求已经开始与何时完成?我假设如果一个请求已经开始,它不应该在时间列中显示总时间,否则总时间会在它完成后改变。我看不到总时间的变化,所以我认为它是在完成后显示的。我正在使用 Chrome 33.0.1750.152(最新)。
-
好吧,也许你调试它很糟糕,但我在调试服务器端代码时对其进行了测试,所以我 100% 确定它没有响应,因为它卡在我服务器的断点上-side 代码...我确实在 chrome 中看到了请求,
response选项卡为空,time列中有“待处理”指示。一旦我发布我的执行代码,responsetab 就会被填满,以及经过的时间,对应于我持有该进程的时间。 -
谢谢。我刚刚做了同样的练习。待处理时,请求不会显示在 Network->XHR 选项卡中。我现在注意到它在 Network->ALL 选项卡中显示为挂起。完成后,它还会显示在 Network->XHR 选项卡中。你能重现这个吗?我的 javascript 代码使用 jQuery 的 $.getJSON 函数。似乎 Chrome 开发人员工具在完成之前没有将请求显示为 XHR,这似乎是错误的。
-
确实,我只是非常合乎逻辑地重现了相同的行为。不过,我无法判断这是错误还是功能。但是,从它启动的那一刻起就将它标识为 XHR 确实是非常合乎逻辑的,因为它正是它的启动方式。好吧,至少你知道在它挂起时在哪里可以找到它;-)
标签: ajax google-chrome google-chrome-devtools