2016-03-08 33 views
2

在制作过程中,我们的静态文件通过Akamai(但在我们的网域)提供,包括我们的服务人员。确保服务人员在托管在CDN上时更新?

默认情况下,我们正在缓存服务工作人员,但似乎并不总是得到更新。

这里的正确策略是什么?我们是否应该让服务人员永远不要被缓存,并且每次接到服务人员的每个呼叫时都要打开新的服务人员?

回答

3

服务工作者,如果有一个新的,应当至少每24小时更新一次,即使你设置“最大年龄”的值大于24小时:https://github.com/slightlyoff/ServiceWorker/blob/master/explainer.md#updating-a-service-worker

浏览器会检查每个页面加载都有更新,但会服从缓存。因此,您可以使用'max-age'来决定您希望浏览器检查更新的频率。

+1

当您开始使用安全策略时,可能需要将缓存标头/ TTL设置为0,以确保其始终经常更新,然后随着时间的推移而增加,因为您已熟悉该设置。 – owencm