HTML5-də tətbiq keşi nədir?
sobes.tech Süni İntellekt
AI-dan cavab
HTML5-də Application Cache (Tətbiq Keşi) mexanizmi veb tətbiqlərinin offline işləməsinə imkan verir və brauzerin lokal olaraq keşi tutduğu resurslar (HTML səhifələri, CSS, JavaScript, şəkillər) toplusunu təmin edir.
Application Cache-dən istifadə etmək üçün .appcache uzantılı manifest faylı tələb olunur və bu fayl <html> etiketində manifest atributu vasitəsilə HTML səhifəsinə bağlanır:
<html manifest="manifest.appcache">
...
</html>
Manifest faylının strukturu aşağıdakı kimidir:
CACHE MANIFEST
# Manifest versiyası (istəyə bağlı, keşi yeniləmək üçün)
# v1.0
CACHE:
# Açıqlama ilə keşi tutulan resurslar
/css/style.css
/js/script.js
/images/logo.png
FALLBACK:
# Yedəkləmə resursları əlaqə olmadıqda
/offline.html /
NETWORK:
# Hər zaman şəbəkədən tələb olunmalı resurslar
*
Manifest faylının əsas bölmələri:
CACHE:: Bu bölmədə siyahıya alınan resurslar, ilk səhifə yükləndikdən sonra keşi tutulur.FALLBACK:: Yedəkləmə resurslarını müəyyən edir. Əgər şəbəkə sorğusu əsas resurs üçün uğursuz olarsa, brauzer göstərilən yedəkləmə resursunu yükləyəcək. Format:əsas_resurs yedəkləmə_resursu.NETWORK:: Bu bölmədə siyahıya alınan resurslar heç vaxt keşi tutulmayacaq və həmişə şəbəkədən tələb olunacaq.*simvolu, digər bölmələrdə göstərilməyən bütün resursların həmişə şəbəkədən tələb olunacağını bildirir.
Application Cache yenilənməsi, manifest faylı dəyişdikdə baş verir. Brauzer yenilənmiş manifesti yükləyir, onu mövcud ilə müqayisə edir və yeni və ya dəyişdirilmiş resursları yükləyir. Yeni fayllar yalnız səhifəni yenidən yüklədikdən sonra mövcuddur.
Application Cache ilə əlaqəli hadisələr:
checking: Brauzer yeni versiyanın olub-olmadığını yoxlayır.downloading: Brauzer yeni manifestdə göstərilən resursları yükləyir.progress: Resursların yüklənmə prosesi.updateready: Yeni cache versiyası istifadəyə hazırdır. Səhifəni yeniləmək lazımdır.cached: Resurslar ilk dəfə uğurla keşi tutulub.noupdate: Manifest dəyişməyib.error: Cache yüklənməsi və ya yenilənməsi zamanı xəta baş verib.
Application Cache API window.applicationCache vasitəsilə əlçatandır.
// Cache vəziyyətini yoxlamaq
console.log(window.applicationCache.status);
// updateready hadisəsini idarə etmək
window.applicationCache.addEventListener('updateready', function() {
if (window.applicationCache.status == window.applicationCache.UPDATEREADY) {
// Yeni cache versiyasını tətbiq et və səhifəni yenilə
window.applicationCache.swapCache();
window.location.reload();
}
}, false);
Application Cache offline imkanlar təmin etsə də, idarəetmə çətinliyi, yeniləmə problemləri və elastiklik çatışmazlığı səbəbindən yeni layihələrdə istifadə tövsiyə edilmir. Müasir yanaşma olaraq Service Workers offline giriş və digər funksiyalar üçün istifadə olunur.