繁体   English   中英

如何更新服务人员?

[英]How to update service workers?

情况:

我在mywebsite.com/game上注册了一个服务工作者

navigator.serviceWorker.register('/service-worker.js', {scope: "/"});

在我的服务器上, '/service-worker.js'的maxAge为1d


问题:

service-worker.js有一个主要的错误。 它始终显示空白页,无法获取任何内容。 service-worker.js必须更改。

问题是,每当用户访问mywebsite.com/game ,它就会显示空白页面,并且什么也不做。 我无法使客户端获取新的service-worker.js

如何使客户端获取新的service-worker.js

什么你所描述的,一个更新检查/service-worker.js默认-happens,自动,下所列情况这篇文章

如果发生以下任何情况,将触发更新:

  • 导航到范围内页面的导航。
  • 除非过去24小时内没有进行更新检查,否则将执行诸如推送和同步之类的功能性事件。
  • 仅当服务工作者URL更改时才调用.register() 但是,您应该避免更改辅助URL。

默认情况下,所有现代Web浏览器都会忽略您在/service-worker.js设置的所有Cache-Control标头 ,并直接针对Web服务器获取最新副本。

如果您希望它的行为像“ kill switch”一样,则此Stack Overflow答案具有一些最佳实践,涉及修订后的service-worker.js文件应包含的内容。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM