Update service-worker.js

This commit is contained in:
FURK4NGG
2025-03-04 14:58:30 +03:00
committed by GitHub
parent b76bd0f31f
commit 8851558c80
+20 -10
View File
@@ -1,4 +1,4 @@
const CURRENT_VERSION = 'v78'; // Güncel versiyon numarası const CURRENT_VERSION = 'v80';
const CACHE_NAME = `cache-${CURRENT_VERSION}`; const CACHE_NAME = `cache-${CURRENT_VERSION}`;
const urlsToCache = [ const urlsToCache = [
@@ -38,39 +38,49 @@ const urlsToCache = [
'/.htaccess.txt' '/.htaccess.txt'
]; ];
// Install event - Yeni cache oluştur ve dosyaları ekle // 1️⃣ Service Worker yüklenirken en son cache versiyonunu al
self.addEventListener('install', event => { self.addEventListener('install', event => {
event.waitUntil( event.waitUntil(
caches.open(CACHE_NAME).then(cache => { caches.open(CACHE_NAME).then(cache => {
console.log(`Caching files for version: ${CURRENT_VERSION}`); console.log(`${CURRENT_VERSION} için dosyalar cache'e ekleniyor...`);
return cache.addAll(urlsToCache); return cache.addAll(urlsToCache);
}) })
); );
}); });
// Fetch event - Cache'deki dosyaları kullan, yoksa ağdan al // 2️⃣ Fetch event - İlk olarak internetten dene, sonra cache'e bak
self.addEventListener('fetch', event => { self.addEventListener('fetch', event => {
event.respondWith( event.respondWith(
caches.match(event.request).then(response => { fetch(event.request)
return response || fetch(event.request); .then(response => {
// Eğer online isek ve güncel veriye ulaştıysak, cache'i güncelle
return caches.open(CACHE_NAME).then(cache => {
cache.put(event.request, response.clone());
return response;
});
})
.catch(() => {
// Offline ise cache'den çek
return caches.match(event.request);
}) })
); );
}); });
// Activate event - Eski cache'leri temizle // 3️⃣ Aktivasyon (Eski cache'leri temizleme)
self.addEventListener('activate', event => { self.addEventListener('activate', event => {
event.waitUntil( event.waitUntil(
caches.keys().then(cacheNames => { caches.keys().then(cacheNames => {
return Promise.all( return Promise.all(
cacheNames.map(cacheName => { cacheNames.map(cacheName => {
if (cacheName.startsWith('cache-') && cacheName !== CACHE_NAME) { // Eski versiyonları temizle
console.log(`🗑️ Siliniyor: ${cacheName}`); if (cacheName.startsWith('cache-v') && cacheName !== CACHE_NAME) {
console.log(`🗑️ Eski cache siliniyor: ${cacheName}`);
return caches.delete(cacheName); return caches.delete(cacheName);
} }
}) })
); );
}).then(() => { }).then(() => {
console.log(` Yeni versiyon aktif: ${CURRENT_VERSION}`); console.log(`🚀 Yeni cache aktif: ${CURRENT_VERSION}`);
return self.clients.claim(); return self.clients.claim();
}) })
); );