IndexedDB Nedir?
İngilizce: IndexedDB
IndexedDB, tarayıcı içinde büyük ve yapılandırılmış verileri indeksli, asenkron ve kalıcı şekilde saklayan yerel veritabanıdır.
IndexedDB Nedir?
IndexedDB, tarayıcı içinde daha büyük ve yapılandırılmış verileri saklamak için kullanılan yerel veritabanı API’sidir. Basit anahtar-değer saklayan Web Storage ile karşılaştırıldığında, nesne depoları, indeksler ve transaction mantığı sunar.
Veriler aynı origin altında tutulur ve asenkron API ile erişilir. Bu, büyük veri yazma ve okuma işlemlerinin arayüzü kilitlemesini önlemek için önemlidir.
Nasıl Çalışır?
IndexedDB içinde veritabanı, object store ve index kavramları bulunur. Uygulama ürün kayıtları, form taslakları, mesaj geçmişi, dosya metadata’sı veya çevrimdışı kuyruk gibi verileri store’larda tutabilir. Index kullanıldığında belirli alanlara göre hızlı sorgu yapılabilir.
Service Worker ile birlikte kullanıldığında çevrimdışı deneyimler ve arka plan senkronizasyonu için güçlü bir temel sağlar. Bu nedenle PWA uygulamalarında sık görülür.
İş Kullanımı ve Güvenlik
IndexedDB; saha servis uygulamaları, offline kataloglar, taslak kaydeden formlar, büyük ayar verileri ve istemci tarafı önbelleklerde kullanılır. Ancak tarayıcı depolaması sunucu veritabanının yerine geçmez.
Hassas veriler için şifreleme, süreli temizlik, kullanıcı çıkışında silme ve XSS koruması düşünülmelidir.
İlgili Terimler
PWA, web sitesini service worker, manifest ve duyarlı tasarımla kurulabilir, çevrimdışı çalışabilir uygulama deneyimine yaklaştıran yaklaşımdır.
Service WorkerService worker, web sayfasından ayrı çalışan ve ağ isteklerini yakalayıp cache, push bildirimi ve çevrimdışı deneyimi yöneten tarayıcı scriptidir.
Web Storage (localStorage/sessionStorage)Web Storage, tarayıcıda localStorage ve sessionStorage üzerinden küçük anahtar-değer verilerini istemci tarafında saklar.