1
我正在使用Service Worker和Socket.io進行移動記事應用。分數存儲在數據庫中並以HTML格式呈現,並將此HTML緩存到服務工作者中。這與服務工作者想要達到的一樣,但如果更新了分數,它將顯示刷新時的舊分數。Service Worker + Socket.io:在新訪問時覆蓋緩存頁面
如何讓服務工作者在每次訪問或刷新頁面時抓取最新版本的HTML頁面?
我的代碼用於獲取和緩存:
this.addEventListener('fetch', function(event) {
event.respondWith(
caches.match(event.request).then(function(response) {
if(response) {
console.log('found cached response', response);
return response;
} else {
console.log('response not in cache, fetching it');
return fetchAndCache(event);
}
})
);
});
function fetchAndCache(event) {
return fetch(event.request).then(function(response) {
return caches.open('UFA-other-1.0').then(function(cache) {
console.log('fetched and caching', event.request);
cache.put(event.request, response.clone());
return response;
});
});
}