我已部署需要登录的应用程序。它使用对GET
/ POST
/ DELETE
/ etc数据的API调用。对于这个特定的应用程序,用户很有可能一直日复一日地保持打开状态。他们无需关闭浏览器。
我的问题是,如果我进行了错误修复,然后重新部署了该应用程序,则某些用户可能无法获得该更新版本,因为他们正在使用该应用程序的缓存版本(缓存在其浏览器中)。
我的问题是:有没有办法强制用户重新加载整个应用?
我当时想我可以以某种方式强迫他们注销,然后在重新登录后,用户的浏览器将重新加载整个应用程序。那行得通吗?
还有哪些其他选择?
答案 0 :(得分:0)
为文件提供服务的后端必须包含标头,这些标头告诉浏览器不要缓存您的应用。大约有this very good explanation。一些破坏者:
response["Cache-Control"] = "no-cache, no-store, must-revalidate" # HTTP 1.1.
response["Pragma"] = "no-cache" # HTTP 1.0.
response["Expires"] = "0" # Proxies.
由于用户长时间保持登录状态,因此您可以设置超时刷新。使用正确的标题,此刷新将为您的用户带来新版本。 我也很喜欢Daniel的想法,但是我觉得很难实现。