如何解释Firebug Net面板中的灰色项目? [英] How to interpret grey items in Firebug Net panel?

查看:57
本文介绍了如何解释Firebug Net面板中的灰色项目?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在尝试在我的Web应用程序中调试一些棘手的行为:看起来好像客户端正在发送XHR GET请求,但服务器实际上从未接收过它。此外,客户端似乎在看不见的请求中收到重复数据,因为它发送的先前XHR请求。

I'm trying to debug some tricky behaviour in my web application: It appears as though an XHR GET request is being sent by the client, but the server never actually receives it. Furthermore, the client seems to receive duplicate data in the unseen request as the previous XHR request it sends.

进一步令人困惑的事情,Firebug将第二个XHR请求标记为浅灰色Net面板(这里的请求是底部的第三个,第二个是GET测试):

Further confounding matters, Firebug colors the second XHR request as light gray in the Net panel (the request here is third from the bottom, the second "GET test"):

我无法找到任何有关此着色意义的文档。我想如果我理解这一点,它可能有助于解释这种不寻常的行为。

I haven't been able to find any documentation about what this coloring means. I think if I understood this, it might help explain this unusual behaviour.

如果有人有任何见解,如果你能让我知道,我将不胜感激。

If anyone has any insight, I'd appreciate if you could let me know.

推荐答案

Firebug颜色代码以较浅的灰色从缓存中提供的请求......

因此服务器看不到请求的原因是客户端实际上从未发送过请求,它只是从其缓存中接收响应。如果你正在使用jQuery,你可以在ajax()上使用缓存属性防止缓存AJAX请求。如果你没有使用jQuery,你可以在请求URL的末尾添加一个伪参数,其值为当前时间(以毫秒为单位)(这实际上是我认为的jQuery)。

So the reason the server doesn't see the request is that the client never actually sends it, it simply receives the response from its cache. If you're using jQuery, there is a cache property that you can use on ajax() to prevent AJAX requests from being cached. If you're not using jQuery you can append a dummy parameter to the end of the request URL that has a value of the current time in milliseconds (this is in fact what jQuery does I believe).

url + "?v=" + (new Date()).getMilliseconds()

这应确保URL始终是唯一的,并阻止浏览器使用缓存。

This should ensure the URL is always unique and prevent the browser from using caching.

这篇关于如何解释Firebug Net面板中的灰色项目?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆