HTML5缓存清单:回退部分&;网络*
从 我不明白从URL给出的这段代码到底是做什么的。回退部分是否意味着当找不到任何内容时,显示HTML5缓存清单:回退部分&;网络*,html,cache-manifest,Html,Cache Manifest,从 我不明白从URL给出的这段代码到底是做什么的。回退部分是否意味着当找不到任何内容时,显示offline.html页面 然后网络:所有资源都将被缓存?它还说 它使用常见的CSS、JavaScript和 每一页上的图像。每一个 需要列出资源 显式地在缓存中 这似乎与网络冲突:其中似乎表示缓存所有内容?缓存清单中有三种类型的标题:缓存、网络和回退。任何不在标题下的内容都隐式地设置在缓存下。各部分的说明: 缓存:将缓存此标题下的文件 网络:此标题下的文件需要internet连接,因此不会被缓存 回退
offline.html
页面
然后网络:
所有资源都将被缓存?它还说
它使用常见的CSS、JavaScript和
每一页上的图像。每一个
需要列出资源
显式地在缓存中
这似乎与
网络冲突:
其中似乎表示缓存所有内容?缓存清单中有三种类型的标题:缓存、网络和回退。任何不在标题下的内容都隐式地设置在缓存下。各部分的说明:
缓存:将缓存此标题下的文件
网络:此标题下的文件需要internet连接,因此不会被缓存
回退:与此标题下的模式匹配的文件(例如匹配所有文件的模式“/”)未被缓存,将显示一个回退文件
关于Dive into HTML 5的代码块,下面是对“网络:*”部分的解释:
这意味着,当你浏览的时候
这是一个假设的脱机启用
维基百科在线,您的浏览器将
获取图像、视频和其他
嵌入式资源正常,即使
他们在不同的领域。(本
在大型网站中很常见,即使
它们不是离线网络的一部分
生成application.HTML页面
并在本地提供服务,而图像和
视频从CDN上提供
另一个域。)没有此通配符
flag,我们假设的脱机已启用
维基百科会在
你是在线的,特别是它
不会加载任何外部托管的
图片或视频
以下引述:
它使用常见的CSS、JavaScript和
每一页上的图像。每一个
需要列出资源
在缓存中显式地
意味着您必须在缓存标题下的清单中包含所有必要的CSS、Javascript和图像文件。它与“NETWORK:*”不冲突,因为NETWORK标题并不表示“缓存所有内容”。实际上,它的意思正好相反:网络标题下的所有内容都需要internet连接,不应缓存。我发现了更多关于回退的有用信息: 经过一点实验,我尝试了各种方法,包括FALLBACK:中的文件是否应该出现在缓存或网络部分。答案似乎是否定的 例如。。。 退路: 注册-grait.png脱机-grait-1.png 注册-scape.png脱机-scape-1.png 我最近在我的一个微站点上指定了这一点。其目的是在联机时显示Signup-png文件,在脱机时显示offline-png文件。这很有效。特别是,每行左侧的文件都隐式地显示在网络部分,站点将始终尝试将其联机。它们也不能添加到网络部分,否则它似乎会覆盖回退中的内容。 另外,令人高兴的是,右侧的文件隐式地添加到CACHE:部分,因此即使它们最初没有被使用,它们也会在第一次加载时被缓存,而不必显式地将它们添加到缓存中:尽管您也可以在需要时将它们添加到缓存中。这没什么区别 对于这种配置,查看Web服务器日志,我发现每次刷新页面时,apache都会根据清单文件和该版本页面所需的注册png文件(有一个CSS媒体选择器,根据页面大小确定哪个文件)记录304。所以它总是正确地检查注册png文件以及通常的清单检查,这正是我想要的 为了彻底起见,我尝试查看根文件是否也需要在CACHE:部分中。事实证明不是这样的!如果顶级文件是index.html,并且在其html标记中指定了清单文件,那么清单文件不需要在任何地方包含index.html,而是隐式缓存的 我很好奇应用程序缓存可以扩展多远。可以包含链接到iFrame或在iFrame中的其他html文件吗?或者这些都需要有各自独立的清单文件吗?有人想评论吗 关于格式的旁白,不要犯我犯的错误,那就是。。。 网络 file1.js 缺少冒号会导致它完全崩溃,认为网络本身就是一种资源 一定是。。。 网络:
js感谢您的试验和回来留下反馈!!我正准备开始做同样的事情,因为我不知道回退中的东西是如何缓存的,如果没有在某个地方明确指定的话
CACHE MANIFEST
FALLBACK:
/ /offline.html
NETWORK:
*