私はモバイルスコアキーピングアプリケーションの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;
});
});
}