service-worker - 确保 Service Worker 在 CDN 上托管时得到更新?

标签 service-worker progressive-web-apps

在生产中,我们的静态文件通过 Akamai(但在我们的域上)提供服务,包括我们的 Service Worker。

默认情况下,我们会缓存 Service Worker,但它似乎并不总是会更新。

正确的策略是什么?我们是否应该将 Service Worker 设置为永远不被缓存,并为 Service Worker 中的每个调用进行命中以每次拉取新的 Service Worker?

最佳答案

服务工作线程(如果有新的)应至少每 24 小时更新一次,即使您将“max-age”设置为大于 24 小时的值:https://github.com/slightlyoff/ServiceWorker/blob/master/explainer.md#updating-a-service-worker

浏览器将检查每个页面加载时是否有更新,但会遵守缓存。因此,您可以使用“max-age”来决定浏览器检查更新的频率。

关于service-worker - 确保 Service Worker 在 CDN 上托管时得到更新?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35873006/

相关文章:

push-notification - 具有位置触发推送通知的 PWA?

javascript - Service Worker 可以缓存 POST 请求吗?

web-applications - manifest.json 与 manifest.webmanifest

Angular 8 PWA assetGroups 离线无法工作

javascript - 为什么对动态内容使用 indexeddb 而不是缓存 api

javascript - ServiceWorker 通知点击 - 如何刷新页面并跳转到 anchor 链接?

javascript - Service Worker 正在缓存文件,但从未触发 fetch 事件

reactjs - Gatsby 中的服务 worker (react.js)

android - 在 Android 上使用受信任的 Web Activity 时出现 NullPointerException(多台设备)

angular - 使用 Angular Service Worker 发送 JWT token