当前浏览器保留缓存数据,以便再次从服务器保存重新获取数据。但是,有些情况下我们需要告诉浏览器从服务器重新获取数据,即新的生产版本何时上线。
很多人都知道Crtl + F5,但是大多数人一般不会使用它,因为他们甚至不知道新版本的网站已经上线。
使用的一种常用方法是在文件末尾附加版本号或时间戳,例如http://host/jquery.js?v=2,http://host/jquery.js?v=3等。但这仅在浏览器提取更新版本号的最新HTML时才有效。如果浏览器仍然从缓存中提取,则会加载http://host/jquery.js?v=2而不是http://host/jquery.js?v=3。
有没有办法强制浏览器使所有缓存无效并从服务器重新加载(每当用户在新版本的网站上线后加载页面时)?
请注意:此处不使用“no-cache”元素,因为这会使页面不可缓存。