Web Deposu için W3C spesifikasyonları (bu bir yanlış isim olsa da, yaygın olarak HTML5 yerel depolama olarak bilinir), kullanıcı aracılarının 5 MB'de önerilen bir boyut sınırını zorlamalarına izin verir. Ağın etrafında bulduğum çeşitli kaynaklara göre, pek çok modern tarayıcı, 10MB veren IE dışında bu 5 MB'lık sınırı kullanır. Birincisi, bilmek istiyorum, limit toplam localStorage ve sessionStorage toplamı için mi yoksa tek tek mi?Web Depolama için boyut sınırlarıyla nasıl başa çıkabilirim?
Şimdi, bu sınırlarla nasıl başa çıkıyoruz? Belirli bir tarayıcı için sınırın ne olduğunu öğrenmenin bir yolu var mı? Farklı tarayıcılarda istatistikleri tutan herhangi bir web sitesi var mı? Tarayıcı sınırın üzerine çıktığında atılan bir istisna mıdır? Farklı tarayıcılarda bu "sınıf" istisnasını test etmek için kusursuz bir yol var mı?
bu iyi bir cevap buldunuz mu? –
Hayır, pek değil. Daha da kötüsü yapmak için, web sitesi depolama sınırını aşmaya çalıştığında bir iletişim kutusu görüntüleyen önemli bir tarayıcı (hangisini unuttum) var. Web geliştiricisinin bu mesajı özelleştirmesi için bir yol yoktur, bu yüzden "bu web sitesi depolama sınırını aşmaya çalışıyor" gibi bir şey söyleyecektir, ki bu çok kötü bir kullanıcı deneyimi. Bu nedenle şirketim kullanım durumumuz için yerel depolama alanını kullanmamaya karar verdi ve sadece javascript dosyaları gibi görünen ancak aslında sadece dinamik olarak oluşturulmuş nesne tanımları içeren URL'lerle varsayılan tarayıcı önbellekleme mekanizmasını kullanacaktı. – Kidburla
localStorage ile konuşmayı sağlayan bir modül yazdım, böylece izin verilen maksimum değeri geçmeyecek şekilde, 4mb'yi aşarsa 3MB'nin altına düşene kadarki en eski girdileri boşaltır. Ayrıca, her defasında kullanılan bayt miktarı, sistem her zaman eklendiğinde ya da çıkarıldığında güncellenir; yani, şu anda kullanılan bayt miktarını, büyük-o 1 arama süresiyle alabilirsiniz. –