我开发了一个涉及不断变化的资源的Web应用程序(应用程序更新数据库,这反过来意味着页面更改)。在Chrome中,当我通过链接转到另一个站点并通过后退按钮返回时,它会显示页面的原始版本而不是最新版本。如果我刷新页面,我会看到更改。你知道如何处理这个问题吗?有没有办法强制Chrome刷新页面或保留最新版本?
答案 0 :(得分:1)
显而易见的答案是将Expires标头设置为当前或之前的时间(采用正确的RFC格式)以立即指定页面过期。但是a previous question也是相关的。无论Expires / caching标头如何,Chrome都会将内容缓存300秒。 Internet Explorer也可以积极缓存。
我怀疑有一个好的解决方法。一种可能性是设置一个cookie,其中包含页面服务时的当前时间,并使用页面顶部的Javascript进行测试。如果该值太旧(您选择“太旧”多长时间),则强制使用window.location
重新加载页面,也许使用虚拟查询字符串'?d='+Math.random()
以确保缓存版本不是使用