簡體   English   中英

Service Worker 中的動態緩存名稱

[英]Dynamic Cache name in service worker

如何在服務工作者中創建動態緩存名稱? 我想檢查 API 服務器以了解我的應用程序的最新版本。 這將是我的應用程序的緩存名稱。 我使用了 fetch 但它總是返回undefined

staticCacheName = (() => {
    fetch('https://unitedspace.co.id/check_version.php')
        .then(response => response.json())
        .then(myJson => myJson.app_name + '-' + myJson.version + '.' + myJson.build_number);
})();

這是我的服務人員代碼:

self.addEventListener('activate', function(e) {
    e.waitUntil(caches.keys().then(function(cacheNames) {
        return Promise.all(
        cacheNames.map(function(cacheName) {
            if (cacheName != 'blog-{{ site.github.build_revision }}') {
            return caches.delete(cacheName);
            }
        })
        );
    }));
});




self.addEventListener('fetch', function(e) {
    e.respondWith(caches.match(e.request).then(function(response) {
        return response || fetch(e.request);
    }));
});

您的第一個代碼段中沒有任何回報。 正常嗎?

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM