我想知道HTML5 Cache Manifest的网络部分的用途是什么?
在线白名单可能包含零 或更多网络资源的URI 应用程序将需要访问 服务器而不是离线 缓存。这让浏览器了 安全模型保护用户免受 潜在的安全漏洞 限制访问仅限于批准 资源
我想知道为什么这是必需的。不会缓存未在缓存清单的显式部分中列出的文件吗?
答案 0 :(得分:1)
我理解(从阅读Dive Into HTML5)当有清单的应用程序尝试从不同的域请求文件时,如果它们列在NETWORK部分中,它可能只会这样做。即使在线,网络部分中未列出的任何内容也似乎无法访问。这可能是指引用“通过限制对已批准资源的访问来保护用户免受潜在安全漏洞”的含义“ - 您可以使Web应用程序脱机以将其与网络的其余部分隔离并防止交叉网站脚本。
这似乎是一些奇怪的规则。并且看起来NETWORK中列出的本地文件与根本没有列出的文件之间存在很大差异。 (正如您所说,我不明白为什么您需要在NETWORK中列出一些内容以确保每次都要求它;当然每次都会请求任何未明确缓存的内容。)
另外我注意到Chrome(但不是Firefox)在NETWORK中明确列出的文件在离线时不会回退到离线FALLBACK网址;他们只是导致错误。这可能只是Chrome的一个怪癖。