Firebase服务不会更新Service Worker

标签 firebase web-hosting service-worker firebase-hosting firebase-tools

当我在命令行执行 firebase init 并创建一个标准网页,然后创建 firebaseserve,然后打开 http://localhost:5000 。我通常会得到一个我以前正在处理的网页。我几乎可以肯定这是来自 serviceworker.js 的早期版本。

还取决于我在 Mac 上使用的浏览器(Safari、Chrome、Firefox 和 Opera),它们会得到不同的结果。我的感觉是应该有一个 ServiceWorker.js 清除或重置命令,以便创建一个新的 serviceworker.js 。所以问题是,某处是否有软件重置命令。最好在命令行上?

或者我只是疯了?

最佳答案

由于 Service Worker 注册完全存在于浏览器中,因此 firebaseserve 命令无法知道您已进行更改。

要清除所有本地存储的数据,包括 Service Worker 注册(至少对于 Chrome),您可以打开 Web 检查器,转到“应用程序”选项卡,然后单击“清除站点数据”按钮。 Safari 尚不支持 Service Worker,因此您不应在其中看到相同的行为。

如果您同时处理多个网络应用程序,您可能需要考虑为每个应用程序使用不同的端口,例如firebaseserve -p 5001 用于第二个应用。

关于Firebase服务不会更新Service Worker,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40876095/

相关文章:

Firebase:当用户注册 Google Provider 时如何处理具有相同 displayNames 的用户?

Angularfire2 显示 "Missing permissions"错误,而直接运行 firebase 没有问题

用于托管 Web 应用程序的 Linux 模式和实践

google-chrome - 在 Chrome 中调试 service worker 'trying to install'

service-worker - Push API的推送服务URL是如何设置的?

javascript - promise 数据不会在路由状态更改时呈现 - UI 路由器

android - Crashlytics 自定义键未出现在崩溃中

mysql - 如何将 HeidiSQL(或类似的 MySQL 管理器)与托管数据库一起使用

drupal - Drupal 托管服务应具备的功能列表

javascript - 更改 Service Worker 的名称?