gpt4 book ai didi

javascript - 如何从 Javascript 检查浏览器是否缓存了资源?

转载 作者:行者123 更新时间:2023-12-02 22:03:47 25 4
gpt4 key购买 nike

有没有办法在不下载资源的情况下检查资源是否被浏览器缓存?大多数问题和答案都是旧的,我相信现在情况已经改变,并且有更好的方法。

最佳答案

您可以利用 fetch API 及其对应的 AbortController 来实现此功能,但有一定的误差(预期的漏报)。

它是这样的,获取带有附加信号的所需资源。在短时间内中止,例如。 4毫秒。如果提取在短时间内返回,那么它绝对会被缓存。如果提取被中止,则可能不会被缓存。这是一些代码:

      async checkImageCached(url, waitTimeMs = 4) {
const ac = new AbortController()
const cachePromise = fetch(url, {signal: ac.signal})
.then(() => true)
.catch(() => false)
setTimeout(() => ac.abort(), waitTimeMs)
return cachePromise
}

关于javascript - 如何从 Javascript 检查浏览器是否缓存了资源?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59787487/

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