应用程序缓存后备URL无法卸载时会发生什么?

时间:2013-03-26 11:33:08

标签: javascript html5 web-applications html5-appcache

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

  

当尝试加载资源失败时,将使用回退条目。   例如,假设缓存清单文件   http://www.example.com/example.appcache包括以下内容   含量:

CACHE MANIFEST
FALLBACK:
example/bar/ example.html
     

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

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

1 个答案:

答案 0 :(得分:1)

在您尝试更新之前,后备文件仍将位于浏览器的应用程序缓存中。更新清单后,浏览器尝试更新将失败,按照"Downloading or updating an application cache" procedure的第17项第4项:

  

如果上一步失败(例如服务器返回4xx或5xx)   响应或等效,或存在DNS错误或连接   超时,或用户取消下载),或服务器   返回重定向,或者如果资源标有“no-store”   cache指令,然后运行第一个适当的步骤   以下列表:[HTTP]

     
    

如果正在处理的URL被标记为“显式条目”或     “后备条目”

         

如果对文件列表中的任何其他URL并行运行这些步骤,则对这些其他URL中止这些步骤。运行缓存     失败的步骤。

  

如果这是更新尝试,则先前版本的缓存将保持活动状态,如果是新尝试,则不会缓存任何内容。