AppCache清单中NETWORK和FALLBACK字段的含义是什么?

时间:2014-08-09 04:55:43

标签: html5-appcache

来自http://www.html5rocks.com/en/tutorials/appcache/beginner/

  

CACHE:这是条目的默认部分。列出的文件   这个标题(或紧接在CACHE MANIFEST之后)将是   在第一次下载后显式缓存。

这似乎是AppCache的默认用法。如果此处列出的内容位于缓存中,请使用它。否则,请下载并缓存它。

  

NETWORK:本节中列出的文件可能来自网络   它们不在缓存中,否则网络不会被使用,即使   用户在线。您可以在此处或者简单地将特定URL列入白名单   “”,允许所有网址。大多数网站都需要“”。

这是什么意思?这似乎与CACHE具有相同的含义。

  

FALLBACK:一个可选部分,指定资源的后备页面   无法进入。第一个URI是资源,第二个是   如果网络请求失败或错误,则使用回退。两个URI都必须   来自清单文件的原点。你可以捕捉特定的   URL以及URL前缀。 “images / large /”将捕获失败   URL,例如“images / large / whatever / img.jpg”。

因此无法访问服务器无法访问?如果在服务器中找不到某些内容,并且它在FALLBACK中,它会向回退资源发送请求并对其进行缓存吗?如果下次原始资源仍然不可用,它会使用缓存中的回退吗?或者,如果下次原始资源可用,它将清除缓存并下载原始缓存并缓存它吗?

1 个答案:

答案 0 :(得分:1)

CACHE :任何可以静态提供的文件都可以在本节中介绍(例如图像,CSS文件或Web字体)。需要由服务器解释的文件(PHP,Python等)不能放在这里。

NETWORK :明确需要网络连接的文件,换言之,需要用户联机的资源。在此部分中放置资源将绕过out缓存并尝试从网络加载资源。例如Google Analytics(分析),图像资源,如实时凸轮或通过网络加载的某种数据。

FALLBACK :您可以在此处为需要来自网络的资源设置应用缓存备选方案。例如,您可能希望在其中缓存旧版本的实时凸轮图像。浏览器将使用本节中的规则加载替代方案,但仅在尝试首先从网络加载资源之后。

我建议你查看Udacity的Mobile Web Development课程。这是我了解app缓存的地方。这是由Google及其免费构建的精彩课程!