2012-11-26 19 views
46

मुझे कैश व्यवहार के संबंध में articles मिला है, इसलिए मैं केवल यह मान सकता हूं कि यह बहुत अलग नहीं है लेकिन मैं यह सुनिश्चित करना चाहता हूं।स्थानीय स्टोरेज भरने पर क्या होता है?

मैंने पढ़ा है कि अधिकांश ब्राउज़र में स्थानीय स्टोरेज के लिए 5 एमबी (देना या लेना) है और मुझे ब्राउजर का व्यवहार क्या होगा?

मैं समझता हूं कि प्रत्येक ब्राउज़र अलग-अलग कार्य करता है लेकिन मैं ज्यादातर सफारी, क्रोम और फ़ायरफ़ॉक्स में घुसपैठ कर रहा हूं (जैसा कि मैं ब्राउज़र के रूप में मानता हूं)।

  • ब्राउज़रों ऊपर उल्लेख किया जाएगा मेरी वेबसाइट से डेटा को हटाने या इसे "सबसे पुराना" या एक तरह से कुछ का चयन करेंगे?
  • क्या मेरा आइटम ऐसे मामले में सहेजा जाएगा?

और सबसे महत्वपूर्ण:

  • चलें कहना मैं "गाली" localStorage और मेरी वेबसाइट यह सब का उपयोग करने की कोशिश कर, और एक ही पेज में मैं इसे भरने कर रहा हूँ ऊपर और अधिक बचत करने की कोशिश कर रहा हूं, क्या मुझे चेतावनी मिलेगी औरgetItem यह घटित होने पर शून्य हो जाएगा या यह किसी भी तरह स्मृति में सहेजा जाएगा?

  • क्या होता है यदि मैं किसी आइटम को स्थानीय स्टोरेज आकार को बड़ा और सहेजने का प्रयास करता हूं?

    उत्तर दिया: जवाब पाया जा सकता है here

  • एक ही सटीक व्यवहार sessionStorage से उम्मीद की जा सकती है जो allegdly एक ही होना चाहिए?

मैं जानता हूँ कि इस सवाल का बहुत कुछ है, लेकिन मैं समझने के लिए कि सभी विषय से संबंधित है कोशिश कर रहा हूँ, मैं सवाल आप जवाब कर सकते हैं के किसी भी हिस्से के लिए thankfull होगी।

सम्मान।

+0

क्या हुआ, जब आपने इसे आजमाया? – kol

+0

वैसे मैंने इसे भर नहीं लिया है, फिर भी यह सुनिश्चित करने के लिए कि मैं प्रारंभिक गलतियों को नहीं करता हूं, पहले से अधिक शोध करने की कोशिश कर रहा हूं। मुझे पूरा यकीन नहीं है कि इसे कैसे आजमाया जाए और मैंने देखा कि ऐसा कोई सवाल नहीं है और न ही लेख है और मैंने सोचा कि यह लोगों के लिए एक अच्छी पोस्ट हो सकती है। एक बार जब मैं उस बिंदु तक पहुंच जाता हूं तो मैं अपने स्वयं के निष्कर्ष जोड़ूंगा यदि इसका उत्तर तब तक नहीं दिया जाता है। –

+2

इस पर एक नज़र डालें: http://stackoverflow.com/questions/12508274/does-amplify-store-return-error-or-catch-exception-when-local-storage-limit-exce –

उत्तर

62

सबसे पहले, कुछ उपयोगी संसाधन:

  • Web Storage Support Test - एक मेज ब्राउज़रों के बीच डेटा संग्रहण कोटा की तुलना है।
  • Simple localStorage quota test
  • Summary of localStorage browser behaviour
  • W3C spec - यह दर्शाता है कि कैसे एक उपयोगकर्ता एजेंट (जैसे ब्राउज़र) (दोनों localStorage और sessionStorage) व्यवहार करना चाहिए।

आपके प्रश्न के उत्तर में, डेस्कटॉप ब्राउज़र में प्रति डोमेन 5MB का प्रारंभिक अधिकतम स्थानीय स्टोरेज कोटा होता है। कुछ मामलों में यह उपयोगकर्ता द्वारा समायोजित किया जा सकता:

  • ओपेरा: ओपेरा: config -> localStorage
  • Firefox के लिए डोमेन कोटा: about: config -> dom.storage।default_quota

क्रोम में, उपयोगकर्ता को इस सेटिंग को समायोजित करने का कोई तरीका प्रतीत नहीं होता है हालांकि ओपेरा की तरह, स्थानीय स्टोरेज डेटा डेवलपर टूल्स का उपयोग करके प्रति डोमेन सीधे संपादित किया जा सकता है।

जब आप स्थानीय स्टोरेज में डेटा स्टोर करने का प्रयास करते हैं, तो ब्राउज़र जांचता है कि वर्तमान डोमेन के लिए पर्याप्त शेष स्थान है या नहीं। यदि हां:

  • डेटा संग्रहीत किया जाता है, यदि समान कुंजी पहले से मौजूद है तो मूल्यों को ओवरराइट कर रहा है।

यदि कोई:

  • डेटा संग्रहीत नहीं है और कोई मौजूदा डेटा अधिलेखित है।
  • QUOTA_EXCEEDED_ERR अपवाद फेंक दिया गया है।

इस मामले में, getItem(key) अंतिम मूल्य जो सफलतापूर्वक संग्रहीत किया गया था, वापस कर देगा।

नोट (ओपेरा यह उपयोगकर्ता वर्तमान डोमेन के लिए संग्रहण स्थान में वृद्धि का विकल्प देने के एक संवाद बॉक्स प्रदर्शित करता है कि में थोड़ा अलग। है) कि sessionStorage और localStorage ही भंडारण वस्तु के दोनों कार्यान्वयन इसलिए कर रहे हैं उनके व्यवहार समान है और त्रुटि प्रबंधन समान है।

+0

यह एक ठोस उत्तर की तरह लगता है, आपके समय के लिए धन्यवाद! –

+0

आपका स्वागत है। क्षमा करें मुझे सफारी या आईई (मैं लिनक्स पर हूं) के लिए जानकारी नहीं है। – tagawa

+0

यदि मैं सही ढंग से समझ रहा हूं, तो क्या इसका मतलब है कि सभी ब्राउज़रों में डोमेन विशिष्ट कोटा सीमा है? या है (कहें) 5 एमबी मेमोरी सभी डोमेन द्वारा साझा की जाती है? – Nis

संबंधित मुद्दे