工作箱路由/缓存/删除/更新和服务人员注册?

时间:2018-10-03 05:29:02

标签: caching service-worker progressive-web-apps workbox workbox-webpack-plugin

关于服务人员和工作箱,我有几个问题。

1)何时在webapp中注册服务工作者。    *如果我直接在index.html中注册,如果我有预缓存资产,则      首先,precache资产会使用两次下载两次      请求和一次机智的工作箱,这延迟了第一次绘画。

* If I register onload of page the issue is getting resolved but if I 
  have api hits which are to be cached it is getting cached on second 
  time refresh of the page.

2)在我的Web应用程序中,我们很快使用了许多第三方js,css,gif。因此,在我的路由中,如果我想为每个请求缓存它们(如果注册路由器)似乎很复杂,那么可以尝试使用正则表达式模式,因此如果我需要从缓存中排除某些图像格式,那么任何人都可以建议最好的正则表达式来缓存它们。因此,缓存第三方js,css,api匹配等其他格式的最佳方法。

3)清除缓存的最佳方法是使用到期和全部。但是在我的情况下,如果用户更改了他的位置,我需要清除一些缓存内容,那么我该如何实现。

4)何时使用缓存以及何时使用indexeddb?

5)使用workbox-webpack插件然后直接使用workbox的优势。有什么主要优势吗?

6)注册/注销/更新服务人员的最佳做法?

7)如果我使用workbox-webpack插件和动态路由来缓存js / css文件,那么对于每次构建更改,都会生成具有不同哈希值的js / css文件并对其进行缓存,因此服务工作者使用以下方法缓存同一文件:不同的哈希值。

8)强制删除缓存名称和缓存中的单个文件的最佳方法。

0 个答案:

没有答案