gpt4 book ai didi

javascript - 如何在不更改 URL 的情况下强制浏览器重新加载缓存的 URL

转载 作者:行者123 更新时间:2023-11-30 15:26:50 25 4
gpt4 key购买 nike

意外发生,某个HTML页面被浏览器设置为缓存。我们不想更改该页面的 URL,因为其他方依赖该 URL(包括 SEO)。

有没有办法让尽可能多的客户端重新加载该页面?客户在网站上四处浏览时经常会来到该页面,因此我们通常能够在他们访问有问题的页面之前向他们发送一些新的 JavaScript(或任何其他资源)。也许有一个强制重新加载的 JavaScript 技巧?!

最佳答案

下面的代码片段将使 URI 等于 uriOfCachedPage 的页面的缓存条目无效:

var xhr = new XMLHttpRequest();
xhr.open("GET", uriOfCachedPage, true);
xhr.setRequestHeader("Cache-Control", "max-age=0");
xhr.send();

您需要将此代码注入(inject)您的用户可能会获得的脚本或 HTML 页面。

更多信息请查看XMLHttpRequest MDN 和 Request Cache-Control Directives 上的页面RFC 7232 超文本传输​​协议(protocol) (HTTP/1.1) 中的部分:缓存。

您还可以将 cachedPageReloaded 标志存储在 cookie 或 localStorage 中,并仅在缓存条目之前未失效时才使其失效。检查Document.cookieWindow.localStorage MDN 上的页面。

关于javascript - 如何在不更改 URL 的情况下强制浏览器重新加载缓存的 URL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42831220/

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