Cookies, sessionStorage və localStorage arasındakı fərqi izah edin.
sobes.tech Süni İntellekt
AI-dan cavab
Cookies, müştəri tərəfində kiçik həcmli mətn məlumatlarını (4 KB-ə qədər) saxlayır, hər HTTP sorğusu ilə onları qurmuş domenə göndərilir. Onlar vaxt limiti ilə ola bilər. Avtorizasiya, istifadəçi izləmə, istifadəçi üstünlüklərinin saxlanması üçün istifadə olunur.
localStorage vaxt limiti olmadan məlumatları saxlayır (istifadəçi və ya tətbiq silməyincə və ya brauzeri bağlamayincə) müştəri tərəfində (brauzerə görə 5-10MB). Məlumatlar brauzer sessiyaları arasında mövcuddur, lakin yalnız eyni mənbəyə (domen, protokol, port) aid skriptlər üçün. Avtomatik olaraq HTTP sorğuları ilə göndərilmir. Uzunmüddətli saxlama və tətbiq parametrləri üçün istifadə olunur.
sessionStorage bir sessiya boyunca məlumatları saxlayır (karta və ya pəncərə açıq olduğu müddətdə). Məlumatlar karta və ya pəncərə bağlandıqda silinir. Saxlama qabiliyyəti localStorage ilə oxşardır (5-10MB). Məlumatlar yalnız eyni mənbəyə aid skriptlər üçün əlçatandır. Avtomatik olaraq HTTP sorğuları ilə göndərilmir. Cari sessiya üçün müvəqqəti məlumatların saxlanması üçün istifadə olunur.
| Xüsusiyyət | Cookies | localStorage | sessionStorage |
|---|---|---|---|
| Saxlama müddəti | Vaxt limiti və ya brauzeri bağlamaq | İstifadəçi və ya tətbiq silənə qədər | Karta və ya pəncərə açıq olduğu müddətdə |
| Məlumat ölçüsü | 4 KB-ə qədər | 5-10MB-ə qədər | 5-10MB-ə qədər |
| Əlçatanlıq | HTTP sorğuları ilə domenə göndərilir | Yalnız eyni mənbəli JavaScript vasitəsilə | Yalnız eyni mənbəli JavaScript vasitəsilə |
| Kartlar arasında əlçatanlıq | Bəli | Bəli | Xeyr (fərqli kartlar üçün) |
| Məqsəd | Autentifikasiya, izləmə, üstünlüklər | Uzunmüddətli saxlama, parametrlər | Müvəqqəti saxlama, sessiya üçün |
localStorage istifadəsi nümunəsi:
// Məlumat saxlamaq
localStorage.setItem('userName', 'Alice');
// Məlumat almaq
const userName = localStorage.getItem('userName');
console.log(userName); // Nəticə: Alice
// Məlumatı silmək
// localStorage.removeItem('userName');
// Bütün saxlamağı təmizləmək
// localStorage.clear();
sessionStorage istifadəsi nümunəsi:
// Məlumat saxlamaq
sessionStorage.setItem('orderId', '12345');
// Məlumat almaq
const orderId = sessionStorage.getItem('orderId');
console.log(orderId); // Nəticə: 12345
// Məlumatı silmək
// sessionStorage.removeItem('orderId');
// Bütün saxlamağı təmizləmək
// sessionStorage.clear();