【问题标题】:Is Firebug always correct at how it lists downloads with the Net tab?Firebug 是否总是正确地使用“网络”选项卡列出下载?
【发布时间】:2012-12-26 20:51:13
【问题描述】:

当可能从缓存中加载内容时,Firebug 是否可能会错误地将下载添加到“网络”选项卡?

我在 Javascript 库中有一些代码,用于在单击缩略图时延迟下载图像,然后在下载后显示它。它的目的是确定它是否已经被首先下载(通过一个带有布尔值的数组),如果它之前已经下载过,只需从缓存中显示。

我认为它在一段时间内工作正常(因为单击两次时它们出现的速度),但我最近查看了 Firebug 的“网络”选项卡,它似乎每次都在下载大图像(以及总每次点击文件都会变大)。

我不确定我做错了什么,因为一些调试告诉我布尔值正在正确更新。

所以我的问题是,Firebug 是否不正确(我对此表示怀疑),或者有什么方法可以强制它从缓存中显示(我认为使用与 image.src 完全相同的图像路径可以做到这一点)

这是我第一次尝试 Javascript 中的对象,所以我对我的代码不是 100% 有信心,所以请善待!

【问题讨论】:

    标签: javascript firebug


    【解决方案1】:

    firebug 中 net 选项卡中出现的图像并不意味着它是从服务器下载的。检查 firebug 为图像报告的 HTTP 响应代码 - 对我来说,在一次访问后,它一直返回“304 - Not Modified”,这意味着它正在从缓存中加载。

    您可以通过发送far-future headers 为您想要硬缓存的组件来避免检查缓存是否仍然新鲜的额外 HTTP 请求。但请记住,为了强制客户端重新下载以这种方式缓存的组件,您必须更改文件名。

    【讨论】:

      【解决方案2】:

      Firebug 可能不是 100% 正确的,或者至少,如果 Firebug 被关闭,这可能不会完全正确。

      我会尝试使用 Fiddler 或 WireShark 来检查网络活动,看看它是否看起来有什么不同。 Fiddler 是 IE 的调试代理,WireShark 是数据包嗅探器。

      我不能确切地说 Firebug 网络监视器是如何工作的,因为我从来没有深入了解过引擎盖,但是我经历了一些我认为是我所做的错误的事情,当 Firebug 关闭时这些事情就消失了。

      似乎 Firebug 在测量事物的行为中,以一种“看着你的量子猫”的方式改变事物。 Firebug 仍然很稳定,但它确实有一些限制。

      【讨论】:

        【解决方案3】:

        我检查了您的网站并使用 CacheViewer 确认它确实正在缓存它并从磁盘中获取它,并且从今天起一个月到期。如果您愿意,您也可以通过将所有图像组合成一张大图像并仅显示感兴趣的区域来使用拼接,尽管我通常对小图像使用拼接,例如分页图标等。无论如何,您的网站看起来很棒并且喜欢这种方式你延迟加载大图像。

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2020-08-27
          • 2022-10-14
          • 1970-01-01
          • 2021-07-03
          相关资源
          最近更新 更多