我可以在服务工作人员中犯一个错误而杀死我的页面吗?

时间:2018-08-07 11:03:42

标签: service-worker

之前,我部署了页面的新版本,安装了一个服务工作程序,该服务工作程序仅应在安装时缓存脱机页面,并且如果服务工作程序由于脱机而无法获取文档,则应重定向到该缓存的脱机页面。

现在,某些功能无法按预期运行,有时服务人员会显示脱机页面,尽管他不应该如此。所以我感到恐慌,因为我找不到问题,并部署了一个新版本,该版本应该注销所有服务人员。我希望一切都能再次对所有人起作用。

但是,当我想到这些问题时,我感到震惊,因为我意识到服务人员的危险性,这导致了我的疑问,我在万维网上找不到任何地方。所以也许有人对我有一个答案:

如果我碰巧要缓存一个页面(例如,脱机页面),但不仅在获取失败时出错,而且在每次请求时都返回该缓存的脱机页面,这会发生什么?然后我会杀死我的整个页面吗?

如我所见,服务工作者将拦截对服务器的每个请求,而用户将仅看到此脱机页面。哪个被缓存。因此,我无法做任何事情来注销服务人员吗?因为请求永远不会到达我的服务器或我可以修改的任何页面?

你能证实这一论点吗?还是证明它是错误的?

对此我感觉很不好。

感谢您的帮助,以帮助您充分了解这确实有多危险。

致谢

1 个答案:

答案 0 :(得分:0)

是的。
您可以构建一些内容来删除/杀死您创建的任何网站的一部分。
然后也许要构建一些东西来使该网站正常运行而无需您有意删除这些部分。

这是最不常见的用例。
您可能需要构建和测试某些东西,以查看它是否按预期工作。