gpt4 book ai didi

javascript - 如果有新版本,我如何强制 SPA 客户端硬刷新?

转载 作者:行者123 更新时间:2023-11-30 14:00:38 24 4
gpt4 key购买 nike

我有一个单页应用程序,需要客户端使用最新版本。缓存是激进的,因此等待它们失效是不可行的。

有没有办法告诉客户端查看资源(比如说 build.txt 之类的东西),如果该资源包含的内部版本号大于当前加载的内部版本号,则使缓存无效并刷新?

最佳答案

由于这个问题已被标记为 progressive-web-apps 我将假设它正在安装一个 service-worker,它正在积极缓存资源。

This post通过为 PWA 显示“可用的新版本”弹出窗口来运行 - 即使这不是您想要的特定行为,它也解释了很多关于服务工作人员如何更新的信息。

This question/answer还讨论了服务工作人员检查更新的频率。

This question/answer回顾始终使用 skipWaiting 让客户端立即保持最新状态的优缺点。

编辑:如果您只是处理常规的 HTTP 缓存,请尝试使用 location.reload(true) (重新加载 forcedReload 标志集)当您检测到服务器上有更新的版本时。过去,我通过在构建/发布时将发布号放入 js 代码中,并让服务器将其发布号作为 header 添加到每个响应中来完成此操作。 ajax 调用后的值的简单比较可以确认 ui 和服务器版本号是否匹配,并在不匹配时采取措施。

关于javascript - 如果有新版本,我如何强制 SPA 客户端硬刷新?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56370212/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com