Serviceworker cache-first&在后台更新资源

时间:2015-11-20 20:55:29

标签: web-applications polymer offline-caching service-worker progressive-web-apps

我目前正在使用Polymer构建一个渐进式Web应用程序,它主要应该像原生应用程序一样。我已经创建了一个清单,但更重要的是,应用程序尽可能快地加载。我想到了以下步骤:

一旦Serviceworker注册并且&所有资源都被缓存,我希望Serviceworker始终从缓存加载资源,即使是使用Internet连接也是如此。在运行时,Web应用程序应检查是否有任何新资源可用或已更改。如果是这样,请在后台下载它们,将它们保存在缓存中,以便下次加载Web应用程序时,它会使用新资源。

对于serviceworker和缓存相对较新,任何建议,链接或想法都受到高度赞赏!

1 个答案:

答案 0 :(得分:0)

根据Jeff Posnick的评论更新:

您是否查看了platinium-sw-cache元素? 它基于sw-toolbox并提供了几种缓存策略。

您可能需要fastest缓存策略:

  

并行地从缓存和网络请求资源。首先回应哪个回报。通常这将是缓存版本,如果有的话。一方面,即使资源被缓存,此策略也将始终发出网络请求。另一方面,如果/当网络请求完成时,缓存会更新,以便将来的缓存读取更新。

<platinum-sw-register auto-register>
  <platinum-sw-cache defaultCacheStrategy="fastest"></platinum-sw-cache>
</platinum-sw-register>