PowerScan
HI

कुकी, Local Storage और IndexedDB: सेशन असल में क्या है

एंटीडिटेक्ट ब्राउज़र · 7 मिनट में पढ़ें · PowerOps द्वारा

फ़ोटो: Unsplash

साइन-इन करना तीन अलग जगहों पर लिखता है। यह जानना कि कौन सी कौन सी है, समझाता है कि सेशन कुछ चीज़ों से क्यों बचे रहते हैं, कुछ पर क्यों टूट जाते हैं, और प्रोफ़ाइल सिंक करने में तीनों को क्यों ले जाना पड़ता है।

"लॉग इन होना" एक चीज़ जैसा लगता है। असल में यह कम से कम तीन हैं, तीन अलग जगहों पर, तीन अलग जीवनकालों के साथ, और यही अंतर सेशनों को मशीनों के बीच ले जाते समय लोगों के सामने आने वाले ज़्यादातर उलझाने वाले व्यवहार को समझाता है।

कुकी

छोटी की-वैल्यू जोड़ियाँ, जो उन्हें सेट करने वाली साइट को हर रिक्वेस्ट के साथ अपने आप भेजी जाती हैं। सेशन टोकन आम तौर पर यहीं रहता है।

तीनों में कुकी सबसे छोटी और सबसे ज़्यादा बोझ उठाने वाली हैं। उन्हें खो दें तो आप साइन-आउट हो जाते हैं।

Local Storage और Session Storage

स्ट्रिंग की-वैल्यू स्टोरेज, जिसे पेज का JavaScript पढ़ता और लिखता है, प्रति ऑरिजिन सीमित। यह रिक्वेस्ट के साथ कभी नहीं भेजा जाता। पेज को उसे जानबूझकर पढ़ना पड़ता है।

एप्लिकेशन यहाँ पसंद, कैश की हुई प्रोफ़ाइल जानकारी, फ़ीचर फ़्लैग और अक्सर रिफ़्रेश टोकन रखते हैं। Local Storage साफ़ किए जाने तक बना रहता है; Session Storage सिर्फ़ टैब के जीवित रहने तक रहता है।

IndexedDB

ब्राउज़र में असली डेटाबेस: संरचित रिकॉर्ड, इंडेक्स, ट्रांज़ैक्शन। आधुनिक वेब एप्लिकेशन यहाँ हर ठोस चीज़ रखता है: कैश किए संदेश इतिहास, ऑफ़लाइन कतारें, एंड-टू-एंड एन्क्रिप्टेड फ़ीचर की एन्क्रिप्शन कीज़।

प्रोफ़ाइल के लिए यह क्यों मायने रखता है

यह "आइसोलेशन" को सटीक अर्थ देता है। दो प्रोफ़ाइल तब आइसोलेटेड हैं जब ये तीनों अलग हों, साथ में कैश और एक्सटेंशन की स्थिति भी। जो टूल कुकी को आइसोलेट करता है और IndexedDB साझा करता है, उसने समस्या का सिर्फ़ आसान तिहाई हिस्सा आइसोलेट किया है।

यह प्रोफ़ाइल को मशीनों के बीच ले जाने का पैमाना भी तय करता है। सिर्फ़ कुकी ले जाना सेशन का आकार दोहराता है, उसका सार नहीं।

स्टोरकौन लिखता हैआम तौर पर क्या रखता है
कुकीसर्वर और पेज स्क्रिप्टसेशन टोकन, पसंद, ट्रैकिंग आइडेंटिफ़ायर
Local Storageपेज स्क्रिप्टरिफ़्रेश टोकन, UI की स्थिति, कैश की हुई प्रोफ़ाइल जानकारी
Session Storageपेज स्क्रिप्टप्रति टैब स्थिति, टैब बंद होने पर हटा दी जाती है
IndexedDBपेज स्क्रिप्टकैश किया डेटा, ऑफ़लाइन कतारें, एन्क्रिप्शन कीज़

अपनी ही मशीनों के बीच सेशन ले जाना

PowerOps प्रोफ़ाइल बंद होने पर कुकी, Local Storage और IndexedDB कैप्चर करता है और उन्हें कहीं और खुलने पर बहाल करता है। हर श्रेणी एक स्विच है, पूरे वर्कस्पेस के लिए या किसी एक प्रोफ़ाइल के लिए, ताकि आप ठीक उतना ही ले जाएँ जितना चाहते हैं।

यह कैसे काम करता है, इसके बारे में दो बातें जानने लायक हैं:

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

व्यावहारिक निष्कर्ष

प्रोफ़ाइल को मारने के बजाय बंद करें। बंद होने पर होने वाली राइट-आउट ही सेशन को पोर्टेबल बनाती है, और इस सूची में यह सबसे सस्ती आदत है।

सभी लेख · स्कैन चलाएँ