【问题标题】:Load an image from Firefox cache?从 Firefox 缓存加载图像?
【发布时间】:2008-12-21 16:33:13
【问题描述】:

如标题所示,我正在尝试从 Firefox 缓存中加载图像。我正在运行 Ubuntu,所以我的缓存位置是 /home/me/.mozilla/firefox/xxxxxx.default/Cache

但是,在缓存中(Mac 上也是如此),文件名只是字母和数字的荒谬组合。有没有办法查明某个文件?

【问题讨论】:

  • 请问您的用例是什么?
  • 缓存只是浏览器以内部格式保存的临时数据。你到底想做什么?

标签: firefox caching greasemonkey


【解决方案1】:

你应该看看CacheViewer Add-on的源代码。
下载文件而不是安装它(右键单击并另存为)然后解压缩它(它只是一个 Zip 文件,即使它具有 .xpi 扩展名),然后在生成的 chrome 文件夹中解压缩 cacheviewer.jar 文件。最后进入 content 然后 cacheviewer 找到 javascript 和 XUL 文件。

根据我的简短调查,有用的例程位于 cacheviewer.js 文件中,但如果您希望有一个简单的 javascript one 衬垫来访问缓存项目,您可能会感到失望。 XUL 文件(只是 XML)有助于确定调用哪些 JS 函数来执行特定任务。我不太确定所有这些如何映射到 Greasemonkey,而不是扩展环境,但希望有足够的代码可以帮助您入门。

【讨论】:

    【解决方案2】:

    嗯,这确实是一个内部实现细节。但我建议看看 about:cache?device=disk 和 about:cache-entry?client=HTTP&sb=1&key=https://stackoverflow.com/Content/img/wmd/blockquote.png 是如何实现的。

    另外,http://www.securityfocus.com/infocus/1832 也提供了详细信息。请注意,Firefox 不会对所有内容都使用单独的文件...

    当然,Firefox 可能随时更改格式。

    【讨论】:

      【解决方案3】:

      只需为您的 img src= 属性提供完整的 URL。如果图像恰好是可缓存的(例如,服务器发送了适当的Expires:Cache-control: 标头)并且它已经在缓存中,Firefox 将不会访问网络。

      HTTP 缓存应该是不可见的。当您生成内容时,通常不必担心。

      您可以将REDbot 指向一个 URL,以查看有关其可缓存性的各种美味信息。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2017-02-27
        • 2016-09-17
        • 2012-07-01
        • 2015-12-13
        • 2016-07-27
        • 2011-11-23
        • 2018-08-03
        • 1970-01-01
        相关资源
        最近更新 更多