从HTML5离线appcache中省略当前页面,但使用缓存资源

Tro*_*ott 7 html5 offline-caching manifest.cache cache-manifest html5-appcache

出于性能目的,我希望我的一些网页使用已缓存以供离线使用的资源(图像,CSS等),但不要将页面本身缓存,因为内容将动态生成.

一种方法是重构我的页面,以便他们通过AJAX加载动态内容或在LocalStorage中查找.细节可能会有所不同,但从广义上讲,这类似的东西.

如果可能的话,我宁愿找到一种方法来简单地指示浏览器为页面使用缓存资源(同样,图像,CSS等),但不实际缓存(动态生成的)HTML内容本身.

有没有办法用HTML5离线appcache做到这一点?我的印象是答案是"不",因为:

  • 任何包含清单的页面都将被缓存,因此我无法在页面本身中指定缓存的资源.
  • 没有办法告诉上一页"为其他页面使用脱机资产,但实际上并未在该页面上缓存HTML".您必须指定页面本身,这意味着将缓存HTML.

我错了吗?似乎可能有一些棘手(或不那么棘手)的方式.现在我已经输入了它,我想知道NETWORK在appcache清单的部分中明确地包含页面是否可以解决问题.

got*_*ers 7

我的回答是"是".

我在一个网络应用程序上工作,我在清单中列出了所有必要的资源,并将该NETWORK部分设置为*.

然后,清单仅包含在主登录页面上.因此,当您第一次访问该网站时,所有资源都会被缓存,并且它会起作用.

简而言之,

  • 您的一个页面必须包含清单,因此将被缓存.

    也许你可以在iframe中加载清单而不是整个页面被缓存,只是一个想法.

  • 列出要在该CACHE部分中缓存的所有资源

  • NETWORK部分设置为*

  • 哦,它实际上就像我开始使用的典型用例场景一样开箱即用.现在不要因为不先测试而感到愚蠢! (2认同)