किसी वेब ब्राउज़र की कुकी की कुंजी का अधिकतम आकार क्या है?


300

किसी वेब ब्राउज़र की कुकी की कुंजी का अधिकतम आकार क्या है?

मुझे पता है कि कुकी का अधिकतम आकार 4KB है, लेकिन क्या कुंजी की सीमा भी है?

जवाबों:


359

आपके द्वारा पढ़ी जाने वाली 4K सीमा संपूर्ण कुकी के लिए है, जिसमें नाम, मान, समाप्ति तिथि आदि शामिल हैं। यदि आप अधिकांश ब्राउज़रों का समर्थन करना चाहते हैं, तो मेरा सुझाव है कि नाम को 4000 बाइट्स के तहत और समग्र कुकी का आकार 4093 बाइट्स के अंतर्गत रखा जाए।

एक बात का ध्यान रखें: यदि नाम बहुत बड़ा है तो आप कुकी को नहीं हटा सकते (कम से कम जावास्क्रिप्ट में)। एक कुकी को अपडेट करके और उसे समाप्त करने के लिए सेट करके हटा दिया जाता है। यदि नाम बहुत बड़ा है, तो 4090 बाइट्स कहें, मैंने पाया कि मैं एक समाप्ति तिथि निर्धारित नहीं कर सकता। मैंने केवल इस हित में देखा, यह नहीं कि मेरे पास एक बड़ा नाम रखने की योजना है।

इसके बारे में अधिक पढ़ने के लिए, यहां आम ब्राउज़र के लिए " ब्राउज़र कुकी सीमाएं " हैं।


विषय पर रहते हुए, यदि आप अधिकांश ब्राउज़रों का समर्थन करना चाहते हैं, तो प्रति डोमेन 50 कुकीज़ से अधिक नहीं , और प्रति डोमेन 4093 बाइट्स । यही है, सभी कुकीज़ का आकार 4093 बाइट्स से अधिक नहीं होना चाहिए।

इसका मतलब है कि आपके पास 4093 बाइट्स की 1 कुकी, या 2045 बाइट्स की 2 कुकीज़ आदि हो सकती हैं।


मैं IE7 के कारण 4095 बाइट्स कहता था, हालांकि अब मोबाइल सफारी 4096 बाइट्स के साथ प्रति कुकी 3 बाइट ओवरहेड के साथ आती है, इसलिए 4093 बाइट्स अधिकतम।


14
4K सीमा एक विशिष्ट डोमेन के तहत सभी कुकीज़ को संदर्भित करती है - इस प्रकार जब यह सीमा पूरी हो जाती है, तो आप संभवतः एक नया कुकी बनाने में असमर्थ होंगे।
ulkas

6
@ulkas: मैंने अब इसमें जोड़ा है। एक बार सीमा समाप्त हो जाने के बाद मैंने कई ब्राउज़रों में देखा है कि आप नई कुकीज़ बना सकते हैं, लेकिन यह मौजूदा वाले का एक गुच्छा हटा देगा।
इयान

1
नोट: RFC 2965 को RFC 6265 द्वारा बदल दिया गया है और प्रतिस्थापित कर दिया गया है। सीमा खंड काफी हद तक अपरिवर्तित है (देखें: tools.ietf.org/html/rfc6265#section-6.1 ), लेकिन RFC 6265 अब विहित स्रोत है।
जिम ओहलोरन

107

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

RFC में खंड 5.3, "कार्यान्वयन सीमाएं" देखें ।


13
हमेशा की तरह, "कल्पना" और "वास्तविक दुनिया" पूरी तरह से अलग प्रतीत होते हैं। क्योंकि कुकीज़ को हर http अनुरोध के साथ भेजा जाता है, यह वास्तव में एक अच्छी बात है कि सीमाएं हैं।
बेन्सवे ने

3
अगर वास्तव में सीमाएँ हैं तो यह एक बहुत बेकार युक्ति है! यह "सही 'उत्तर है, हालांकि!
सीमित प्रायश्चित

3
मुझे समझ नहीं आता कि ब्राउज़र इस युक्ति का पालन क्यों नहीं करते हैं। कोई कारण नहीं है कि मैं एक कुकी में 4KB (जो कि ज्यादा नहीं है) से अधिक डंप करने में सक्षम नहीं होना चाहिए, जब लोकलस्टेज जैसे सामान पहले से मौजूद हैं।
विलियम

1
नोट: RFC 2965 को RFC 6265 द्वारा बदल दिया गया है और प्रतिस्थापित कर दिया गया है। सीमा खंड काफी हद तक अपरिवर्तित है (देखें: tools.ietf.org/html/rfc6265#section-6.1 ), लेकिन RFC 6265 अब विहित स्रोत है।
जिम ओहलोरन

42

कुछ ब्राउज़रों का स्वयं परीक्षण करने के बाद, और ब्राउज़र शॉट्स का उपयोग करके मैंने निम्नलिखित सूची तैयार की है

यहां छवि विवरण दर्ज करें


3
18-02-2017 LOL पर उत्तर दिया गया, लेकिन यह संस्करण बहुत पुराने आउट डेटेड हैं।
अजमल प्रवीण

3
@AjmalPraveen ऐसा इसलिए है क्योंकि इस उत्तर को इस साइट से कॉपी किया गया है (हालांकि एक पुराना संस्करण, जैसा आपने कहा था)। एक स्रोत अच्छा रहा होगा, इसलिए रुचि रखने वाले लोग अधिक अद्यतित स्रोत को देख सकते हैं
रॉबी ग्रोट

4
इस सटीक तालिका को अपडेट किया गया है और browsercookielimits.squawky.net
gskema

39

आप वेब स्टोरेज का भी उपयोग कर सकते हैं, अगर ऐप स्पेक्स आपको अनुमति देता है (इसमें IE8 + के लिए समर्थन है)।

इसके निपटान में 5M (अधिकांश ब्राउज़र) या 10M (IE) मेमोरी है।

" वेब स्टोरेज (दूसरा संस्करण) " एपीआई है और " एचटीएमएल 5 लोकल स्टोरेज " एक त्वरित शुरुआत है।


4
यह शायद यहाँ ध्यान दिया जाना चाहिए कि वेब भंडारण का उपयोग करने के लिए एक चेतावनी यह है कि, बिना वर्कअराउंड के, वेब स्टोरेज में संग्रहीत डेटा केवल HTTP या HTTPS से संग्रहीत / एक्सेस किया जा सकता है, लेकिन उनके बीच साझा नहीं किया जाता है (यहां तक ​​कि उसी साइट के लिए भी)।
इल्यासनो

2
@ilasno Afaik पारंपरिक कुकीज़ के लिए समान सीमा मौजूद है।
स्टीव मिडिल्ले

सबसे महत्वपूर्ण चेतावनी वेब भंडारण के बजाय है, सत्र भंडारण और स्थानीय भंडारण केवल ब्राउज़र से ही सुलभ है, सर्वर से नहीं। उन और कुकीज़ में से किसी एक को चुनते समय विचार करने के लिए निश्चित रूप से कुछ है, जो ब्राउज़र और सर्वर दोनों पर पढ़ने योग्य है।
वडकोरक्वेस्ट

16

एक कुकी कुंजी (एक सत्र की पहचान करने के लिए उपयोग की जाती है) और एक कुकी एक ही चीज़ है जिसका उपयोग विभिन्न तरीकों से किया जा रहा है। तो सीमा वही होगी। माइक्रोसॉफ्ट के अनुसार इसकी 4096 बाइट्स।

MSDN

कुकीज़ आमतौर पर 4096 बाइट्स तक सीमित होती हैं और आप प्रति साइट 20 से अधिक कुकीज़ स्टोर नहीं कर सकते हैं। उपकुंजियों के साथ एकल कुकी का उपयोग करके, आप उन 20 कुकीज़ का कम उपयोग करते हैं जो आपकी साइट आवंटित की गई हैं। इसके अलावा, एक एकल कुकी ओवरहेड (समाप्ति की जानकारी, और इसी तरह) के लिए लगभग 50 अक्षर लेता है, साथ ही इसमें आपके द्वारा संग्रहीत मूल्य की लंबाई, जो सभी 4096-बाइट सीमा की ओर गिना जाता है। यदि आप पाँच अलग-अलग कुकीज़ के बजाय पाँच उपकुंजियों को संग्रहीत करते हैं, तो आप अलग कुकीज़ के ओवरहेड को बचा सकते हैं और लगभग 200 बाइट्स बचा सकते हैं।


7
संयोग से, सिर्फ इसलिए कि आपके पास खेलने के लिए ब्राउज़र कुकी भंडारण के 4KB के बारे में है, जिसे गंभीरता से विचार करना चाहिए कि क्या यह एक अच्छा विचार है या नहीं।
NotMe

क्या आप पुष्टि कर सकते हैं कि डोमेन / साइट के अनुसार कुकी की संख्या 20 से अधिक नहीं हो सकती है? या अब तक इसकी वृद्धि हुई है
म्यूटेंट

2

पूरी तरह से मूल प्रश्न का पूरी तरह से सीधा जवाब नहीं है, लेकिन जिज्ञासु के लिए एक जटिल सीमक एल्गोरिथ्म को लागू किए बिना उनके कुकी सूचना भंडारण योजना को नेत्रहीन रूप से समझने की कोशिश करने के लिए प्रासंगिक है, यह स्ट्रिंग 4096 ASCII वर्ण बाइट्स है:

"abcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmn"

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.