वेब स्टोरेज

वेब स्टोरेज, जिसे कभी-कभी DOM स्टोरेज ( दस्तावेज़ ऑब्जेक्ट मॉडल स्टोरेज) के रूप में जाना जाता है, वेब ब्राउज़र द्वारा प्रदान किया गया एक मानक जावास्क्रिप्ट एपीआई है। यह वेबसाइट को एचटीटीपीकुकी के समान उपयोगकर्ताओं के उपकरणों पर पर्सिस्टेंस (कंप्यूटर विज्ञान) डेटा संग्रहीत करने में सक्षम बनाता है, किन्तु बहुत बड़ी क्षमता के साथ और एचटीटीपीशीर्षलेखों की सूची में कोई जानकारी नहीं भेजी गई। दो मुख्य वेब स्टोरेज प्रकार हैं: स्थानीय स्टोरेज और सत्र स्टोरेज, क्रमशः लगातार कुकीज़ और सत्र कुकीज़ के समान व्यवहार करते हैं। वेब स्टोरेज को विश्वव्यापी वेब संकाय (W3C) द्वारा मानकीकृत किया गया है और WHATWG, और सभी प्रमुख ब्राउज़रों द्वारा समर्थित है।

सुविधाएँ
वेब संग्रहण कुछ प्रमुख मायनों में कुकीज़ से भिन्न है।

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

भंडारण आकार
कुकीज़ 4 किलोबाइट तक सीमित हैं। वेब संग्रहण कहीं अधिक संग्रहण क्षमता प्रदान करता है:
 * ओपेरा (वेब ​​ब्राउज़र) 10.50+ 5 एमबी की अनुमति देता है
 * सफ़ारी (वेब ​​ब्राउज़र) 8 5 एमबी की अनुमति देता है
 * फ़ायरफ़ॉक्स 34 10 एमबी की अनुमति देता है (पूर्व में 2007 में प्रति समान-मूल नीति 5 एमबी )
 * Google Chrome प्रति मूल 10 एमबी (पूर्व में प्रति मूल 5 एमबी) की अनुमति देता है
 * इंटरनेट एक्सप्लोरर प्रति भंडारण क्षेत्र 10 एमबी की अनुमति देता है

स्थानीय और सत्र भंडारण
वेब स्टोरेज दो भिन्न- भिन्न स्टोरेज क्षेत्र प्रदान करता है - स्थानीय स्टोरेज और सत्र स्टोरेज - जो सीमा और जीवनकाल में भिन्न होते हैं। स्थानीय भंडारण में रखा गया डेटा प्रति मूल है - समान-मूल नीति में परिभाषित प्रोटोकॉल, होस्ट नाम और पोर्ट नंबर का संयोजन। डेटा उसी मूल के पृष्ठों से लोड की गई सभी स्क्रिप्ट के लिए उपलब्ध है, जो पहले डेटा संग्रहीत करता था और ब्राउज़र बंद होने के पश्चात् भी बना रहता है। इस प्रकार, वेब स्टोरेज कुकी अशक्त अखंडता और अशक्त गोपनीयता विवादों से ग्रस्त नहीं है, जिसका वर्णन किया गया है  धारा 8.5 और 8.6. सत्र भंडारण प्रति-उत्पत्ति और प्रति-उदाहरण (प्रति-विंडो या प्रति-टैब) दोनों है और उदाहरण के जीवनकाल तक सीमित है। सत्र भंडारण का उद्देश्य एक ही वेब ऐप के भिन्न- भिन्न उदाहरणों को एक-दूसरे के साथ हस्तक्षेप किए बिना  भिन्न- भिन्न विंडो में चलाने की अनुमति देना है, एक ऐसा उपयोग मामला जो कुकीज़ द्वारा अच्छी तरह से समर्थित नहीं है।

इंटरफ़ेस और डेटा मॉडल
वेब स्टोरेज कुकीज़ की तुलना में उत्तम प्रोग्रामेटिक इंटरफ़ेस प्रदान करता है क्योंकि यह एक सहयोगी सरणी डेटा मॉडल को उजागर करता है जहां कुंजी और मान दोनों स्ट्रिंग (कंप्यूटर विज्ञान) हैं।

उपयोग
वेब स्टोरेज का समर्थन करने वाले ब्राउज़र में वैश्विक ऑब्जेक्ट होते हैं  और   विंडो स्तर पर घोषित किया गया। वेब संग्रहण व्यवहार को ट्रिगर करने के लिए इन ब्राउज़रों पर निम्नलिखित जावास्क्रिप्ट कोड का उपयोग किया जा सकता है: स्टोरेज एपीआई के माध्यम से केवल स्ट्रिंग्स को संग्रहीत किया जा सकता है। किसी भिन्न डेटा प्रकार को संग्रहीत करने का प्रयास करने से अधिकांश ब्राउज़रों में एक स्ट्रिंग में स्वचालित रूपांतरण हो जाएगा। यद्यपि, JSON में रूपांतरण जावास्क्रिप्ट ऑब्जेक्ट के प्रभावी भंडारण की अनुमति देता है।

नामपद्धति
W3C ड्राफ्ट का शीर्षक वेब स्टोरेज है। DOM स्टोरेज भी सामान्यतः उपयोग किया जाने वाला नाम रहा है, यद्यपि यह कम होता जा रहा है; उदाहरण के लिए मोज़िला और माइक्रोसॉफ्ट डेवलपर साइटों के DOM स्टोरेज वेब लेखों को वेब स्टोरेज लेखों से बदल दिया गया है। DOM स्टोरेज में DOM वस्तुतः दस्तावेज़ ऑब्जेक्ट मॉडल को संदर्भित नहीं करता है। W3C के अनुसार, DOM शब्द का उपयोग वेब अनुप्रयोगों में स्क्रिप्ट के लिए उपलब्ध कराए गए एपीआई समूह को संदर्भित करने के लिए किया जाता है, और आवश्यक नहीं कि यह वास्तविक दस्तावेज़ ऑब्जेक्ट के अस्तित्व को दर्शाता हो...

वेब भंडारण प्रबंधन
वेब स्टोरेज ऑब्जेक्ट का स्टोरेज सभी सहायक वेब ब्राउज़र के वर्तमान संस्करणों में डिफ़ॉल्ट रूप से सक्षम है, ब्राउज़र विक्रेता उपयोगकर्ताओं को वेब स्टोरेज को मूल रूप से सक्षम या अक्षम करने, या वेब स्टोरेज कैश को साफ़ करने के तरीके प्रदान करते हैं। वेब स्टोरेज पर समान नियंत्रण तृतीय पक्ष ब्राउज़र एक्सटेंशन के माध्यम से भी उपलब्ध हैं। प्रत्येक ब्राउज़र वेब स्टोरेज ऑब्जेक्ट को भिन्न- भिन्न तरीके से संग्रहीत करता है:


 * फ़ायरफ़ॉक्स वेब स्टोरेज ऑब्जेक्ट को SQLite फ़ाइल में सहेजता है  उपयोगकर्ता के प्रोफ़ाइल फ़ोल्डर में.
 * Google Chrome उपयोगकर्ता की प्रोफ़ाइल में SQLite फ़ाइल में वेब संग्रहण डेटा रिकॉर्ड करता है। इस फ़ाइल वाला सबफ़ोल्डर है माइक्रोसॉफ़्ट विंडोज़ ़ पर, और macOS पर.
 * ओपेरा (वेब ​​​​ब्राउज़र) का वेब स्टोरेज इनमें से किसी एक में स्थित है या ओपेरा के संस्करण पर निर्भर करता है।
 * इंटरनेट एक्सप्लोरर का वेब स्टोरेज है.
 * सफ़ारी (वेब ​​​​ब्राउज़र) का वेब स्टोरेज लेबल वाले फ़ोल्डर में स्थित है एक छुपे हुए अंदर फ़ोल्डर.

यह भी देखें

 * अनुक्रमित डेटाबेस एपीआई

बाहरी संबंध

 * HTML Living Standard 11 Web storage
 * W3C: Web Storage
 * Web Storage API on Mozilla Developer Network
 * Opera: Web Storage: easier, more powerful client-side data storage
 * Local Storage on BlackBerry DevZone