当应用程序缓存回退url不可加载时会发生什么



MDC声明浏览器在网络请求失败时加载回退文件:

当尝试加载资源失败时,使用

回退项。例如,让我们说缓存清单文件http://www.example.com/example.appcache包括以下内容内容:

CACHE MANIFEST
FALLBACK:
example/bar/ example.html

任何对http://www.example.com/example/bar/或其任何子目录及其内容导致浏览器发出一个网络请求尝试加载所请求的资源。如果尝试由于网络故障或某种服务器错误而导致的失败;浏览器会加载example.html文件。

当后备文件从缓存中删除时会发生什么?

在您尝试更新之前,回退文件仍将在浏览器的应用程序缓存中。一旦你更新清单,那么浏览器的更新尝试将失败,按照"下载或更新应用程序缓存"过程的第17步第4项:

如果前一步失败(例如,服务器返回一个4xx或5xx响应或等效响应,或者存在DNS错误,或者连接失败超时,或者用户取消下载),或者服务器返回一个重定向,或者如果资源被标记为"no-store"指令中运行第一个适当的步骤[HTTP]

如果正在处理的URL被标记为"显式条目"或"回退条目"

如果这些步骤正在为文件列表中的任何其他url并行运行,则终止这些步骤。运行缓存失败的步骤。

如果这是一个更新尝试,以前的缓存版本将保持活跃,如果这是一个新的尝试,那么什么都不会被缓存。

最新更新