gpt4 book ai didi

javascript - 使用 JavaScript 检测文件系统上的页面何时更改

转载 作者:太空宇宙 更新时间:2023-11-04 15:47:38 24 4
gpt4 key购买 nike

当页面位于本地文件系统(file:/// 而不是 http://https://)?

有答案here使用 AJAX 检查标题中是否有“Last-Modified”标题,但在使用文件协议(protocol)时不会返回。

这是在本地测试时 Firefox 返回的 header :

// headers
Content-Type: text/xml
Content-Length: 20941

更新:
看起来响应已设置为文件,并且在响应上具有 lastModified 属性。我已经添加了一个答案。

最佳答案

根据您在评论中的回复,我会使用某种形式的页面缓存。

检查 this answer将页面的当前内容作为字符串获取并缓存它/它的散列。从那里,对当前页面执行 AJAX 请求并比较内容/哈希。如果它们不匹配,那么您可以重新加载页面。

let contents = document.documentElement.outerHTML;
let frequency = 5000; // How often to check for changes (ms)

setInterval(() => {
let xmlhttp = new XMLHttpRequest();

xmlhttp.addEventListener("load", (res) => {
if(res.responseText != contents)
window.location.reload(true);
});

xmlhttp.open("GET", window.location.href);
xmlhttp.send();
}, frequency);

关于javascript - 使用 JavaScript 检测文件系统上的页面何时更改,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53688744/

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