gpt4 book ai didi

javascript - 如何使用 Service Worker 或缓存对象通过 JavaScript 设置缓存过期时间

转载 作者:行者123 更新时间:2023-12-01 01:38:56 26 4
gpt4 key购买 nike

我可以使用删除方法删除缓存数据。但我想使用过期时间自动删除缓存数据。例如,它应该在 6 小时内被删除。

caches.delete(cacheName).then(function(boolean) {
// your cache is now deleted
});

最佳答案

在将缓存文件发送到客户端之前,您可以检查文件何时被获取,如果文件太旧,则获取新文件:

const url = request.url;
caches.open(cacheName).then(cache => {
cache.match(url).then(response => {
if(!response) {
return fetch(url);
}

const date = new Date(response.headers.get('date'))
// if cached file is older than 6 hours
if(Date.now() > date.getTime() + 1000 * 60 * 60 * 6){
return fetch(url);
}

// else return cached version
return response;
})
})

关于javascript - 如何使用 Service Worker 或缓存对象通过 JavaScript 设置缓存过期时间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52592370/

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