导航到JavaScript中的新网址,但强制重新加载?

car*_*pii 4 javascript

Javascript提供了location.reload(nocache)API。

当'nocache'参数为true时,它将绕过浏览器缓存强制从服务器重新加载当前URL。

通过导航到新的网址时,是否有等效的方法window.location.href = url;

我有一个聊天应用程序,它可以检测到客户端正在运行的版本(与服务器期望的版本相比),如果它们不同,它将提示客户端导航到最新版本的URL。

但是我发现当我发出此消息时,许多客户端仍在使用缓存的脚本。

mot*_*elu 5

没有开箱即用的解决方案。最简单的方法是在URL中添加另一个参数,这将破坏缓存。例如

 window.location = "/server/url?timestamp=" + (new Date()).getTime()
Run Code Online (Sandbox Code Playgroud)

每次您运行它时,时间戳都会改变,浏览器在缓存中不会有该页面。