Junior
Cookies, sessionStorage və localStorage arasındakı fərqi izah edin.
sobes.tech Süni İntellekt
AI-dan cavab
| Mexanizm | Təxmini ölçü | Həyat müddəti | Əlçatanlıq | Serverə ötürülür | İstifadə |
|---|---|---|---|---|---|
| Cookies | 4 KB | Server və ya brauzer tərəfindən təyin olunan son istifadə tarixi | Cari sənəd və alt domenlər (quraşdırmadan asılı olaraq) | Hər HTTP sorğusu ilə | Doğrulama, izləmə, istifadəçi üçün xüsusi parametrlər |
| localStorage | 5-10 MB | Müddətsiz (istifadəçi silənə qədər) | Yalnız cari origin (protokol, domen, port) | Yox | İstifadəçi parametrlərinin və tətbiq vəziyyətinin məlumatlarının saxlanması |
| sessionStorage | 5-10 MB | Brauzer sekmesi və ya pəncərə bağlanana qədər | Yalnız cari origin (protokol, domen, port) | Yox | İstifadəçinin sessiya məlumatlarının müvəqqəti saxlanması |
Cookies:
- Hər HTTP sorğusu ilə serverə göndərilir, bu da trafiki artıra bilər.
- Əsas məqsəd: istifadəçi identifikasiyası (sessiya kukiləri), üstünlüklərin yadda saxlanması, istifadəçi fəaliyyətinin izlənməsi.
- Həm müştəri tərəfində (JavaScript), həm də server tərəfində mövcuddur.
- Domen və yol ilə məhdudlaşdırıla bilər.
- Avtomatik göndərildiyi üçün həssas məlumatların saxlanması üçün daha az təhlükəsiz sayılır.
localStorage:
- Məlumatlar istifadəçinin brauzerində lokal olaraq saxlanılır.
- Hər sorğuda serverə göndərilməsinə ehtiyac olmayan daimi məlumatların saxlanması üçün istifadə olunur.
- Sadə JavaScript API-yə malikdir.
- Məlumatlar açar-dəyər cütləri şəklində saxlanılır.
- Digər originlərdən əlçatan deyil.
// Dəyər təyin etmək
localStorage.setItem('username', 'john.doe');
// Dəyəri almaq
let username = localStorage.getItem('username');
// Dəyəri silmək
localStorage.removeItem('username');
// Bütün localStorage-i təmizləmək
localStorage.clear();
sessionStorage:
- localStorage-ə bənzəyir, lakin məlumatlar yalnız cari sekme və ya pəncərə bağlanana qədər saxlanılır.
- İstifadəçinin cari sessiyası ilə əlaqəli müvəqqəti məlumatların saxlanması üçün idealdır (məsələn, form məlumatları, alış-veriş səbəti).
- Eyni zamanda sadə JavaScript API-yə malikdir, localStorage kimi.
- Məlumatlar yalnız cari origin-də mövcuddur.
// Dəyər təyin etmək
sessionStorage.setItem('sessionId', 'abc123');
// Dəyəri almaq
let sessionId = sessionStorage.getItem('sessionId');
// Dəyəri silmək
sessionStorage.removeItem('sessionId');
// Bütün sessionStorage-i təmizləmək
sessionStorage.clear();