如果您正在使用Service Workers,是否仍需要缓存控制头?

4

在使用场景方面,是否应该优先使用cache-control头而不是Service Workers?除了SW不支持跨浏览器之外,同时使用它们是否有任何好处?

1个回答

14

完全正确。由HTTP缓存头控制的HTTP缓存位于网络和服务工作者之间。所有从服务工作者发起的fetch请求仍使用HTTP缓存。

假设您有一个带有长时间max-age的脚本。大多数服务工作者每次被安装时都会重新填充它们的缓存,也就是说,每当服务工作者脚本中的任何东西/任何事情发生变化时。但是,如果HTTP缓存标头被正确配置,许多要包含在服务工作者缓存中的资源仍将存在于HTTP缓存中,并且可以在不涉及网络的情况下获取。

适当配置的HTTP标头对于中介缓存代理(CDN)正常工作也非常重要。代理并不知道服务工作者及其缓存的任何信息。

更多信息请参见Jake Archibald的Caching best practices & max-age gotchas.


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接