出于性能目的,我希望我的一些网页使用已缓存以供离线使用的资源(图像,CSS等),但不要将页面本身缓存,因为内容将动态生成。 / p>
执行此操作的一种方法是重构我的页面,以便通过AJAX或在LocalStorage中查找内容来加载动态内容。细节可能会有所不同,但从广义上讲,可能就是这样。
如果可能的话,我更愿意找到一种方法来简单地指示浏览器为页面使用缓存资源(同样,图像,CSS等),但不实际缓存(动态生成的)HTML内容本身
有没有办法用HTML5离线appcache做到这一点?我的印象是答案是“不”,因为:
我错了吗?似乎可能有一些棘手(或不那么棘手)的方式。现在我已经输入了它,我想知道在appcache清单的NETWORK
部分明确地包含页面是否可以解决问题。
答案 0 :(得分:7)
我的回答是“是”。
我参与了一个网络应用程序,其中列出了清单中的所有必要资源,并将NETWORK
部分设置为*
。
然后,清单仅包含在主登录页面上。因此,所有资源都会在您第一次访问该网站时进行缓存,并且可以进行处理。
简而言之,
您的一个页面必须包含清单,因此将被缓存。
也许你可以在iframe中加载清单而不是整个页面被缓存,只是一个想法。
列出要在CACHE
部分中缓存的所有资源
NETWORK
部分设置为*
答案 1 :(得分:2)
我很确定答案是否定的。 如果您使用Chrome中的“网络”部分,则会显示从缓存加载的资源以及从服务器加载的资源。我试图如上所述设置appcache,并始终从服务器加载资源。 如果当前页面不在appcache中,那么我会不会在appcache中检查任何资源?
答案 2 :(得分:0)
我发现正在工作的是列出那些你不想在清单的NETWORK:部分的appcache中缓存的文件。对我来说,这意味着将* .asp *添加到网络部分。现在,没有经典的asp文件或aspx文件被缓存。