जवाबों:
आपके द्वारा पढ़ी जाने वाली 4K सीमा संपूर्ण कुकी के लिए है, जिसमें नाम, मान, समाप्ति तिथि आदि शामिल हैं। यदि आप अधिकांश ब्राउज़रों का समर्थन करना चाहते हैं, तो मेरा सुझाव है कि नाम को 4000 बाइट्स के तहत और समग्र कुकी का आकार 4093 बाइट्स के अंतर्गत रखा जाए।
एक बात का ध्यान रखें: यदि नाम बहुत बड़ा है तो आप कुकी को नहीं हटा सकते (कम से कम जावास्क्रिप्ट में)। एक कुकी को अपडेट करके और उसे समाप्त करने के लिए सेट करके हटा दिया जाता है। यदि नाम बहुत बड़ा है, तो 4090 बाइट्स कहें, मैंने पाया कि मैं एक समाप्ति तिथि निर्धारित नहीं कर सकता। मैंने केवल इस हित में देखा, यह नहीं कि मेरे पास एक बड़ा नाम रखने की योजना है।
इसके बारे में अधिक पढ़ने के लिए, यहां आम ब्राउज़र के लिए " ब्राउज़र कुकी सीमाएं " हैं।
विषय पर रहते हुए, यदि आप अधिकांश ब्राउज़रों का समर्थन करना चाहते हैं, तो प्रति डोमेन 50 कुकीज़ से अधिक नहीं , और प्रति डोमेन 4093 बाइट्स । यही है, सभी कुकीज़ का आकार 4093 बाइट्स से अधिक नहीं होना चाहिए।
इसका मतलब है कि आपके पास 4093 बाइट्स की 1 कुकी, या 2045 बाइट्स की 2 कुकीज़ आदि हो सकती हैं।
मैं IE7 के कारण 4095 बाइट्स कहता था, हालांकि अब मोबाइल सफारी 4096 बाइट्स के साथ प्रति कुकी 3 बाइट ओवरहेड के साथ आती है, इसलिए 4093 बाइट्स अधिकतम।
दरअसल, RFC 2965, दस्तावेज़ जो कुकीज़ को कैसे परिभाषित करता है, यह निर्दिष्ट करता है कि कुकी की कुंजी या मान के आकार की अधिकतम लंबाई नहीं होनी चाहिए , और मनमाने ढंग से बड़े कुकीज़ का समर्थन करने के लिए कार्यान्वयन को प्रोत्साहित करता है। प्रत्येक ब्राउज़र का कार्यान्वयन अधिकतम आवश्यक रूप से अलग होगा, इसलिए व्यक्तिगत ब्राउज़र प्रलेखन से परामर्श करें।
RFC में खंड 5.3, "कार्यान्वयन सीमाएं" देखें ।
कुछ ब्राउज़रों का स्वयं परीक्षण करने के बाद, और ब्राउज़र शॉट्स का उपयोग करके मैंने निम्नलिखित सूची तैयार की है
आप वेब स्टोरेज का भी उपयोग कर सकते हैं, अगर ऐप स्पेक्स आपको अनुमति देता है (इसमें IE8 + के लिए समर्थन है)।
इसके निपटान में 5M (अधिकांश ब्राउज़र) या 10M (IE) मेमोरी है।
" वेब स्टोरेज (दूसरा संस्करण) " एपीआई है और " एचटीएमएल 5 लोकल स्टोरेज " एक त्वरित शुरुआत है।
एक कुकी कुंजी (एक सत्र की पहचान करने के लिए उपयोग की जाती है) और एक कुकी एक ही चीज़ है जिसका उपयोग विभिन्न तरीकों से किया जा रहा है। तो सीमा वही होगी। माइक्रोसॉफ्ट के अनुसार इसकी 4096 बाइट्स।
कुकीज़ आमतौर पर 4096 बाइट्स तक सीमित होती हैं और आप प्रति साइट 20 से अधिक कुकीज़ स्टोर नहीं कर सकते हैं। उपकुंजियों के साथ एकल कुकी का उपयोग करके, आप उन 20 कुकीज़ का कम उपयोग करते हैं जो आपकी साइट आवंटित की गई हैं। इसके अलावा, एक एकल कुकी ओवरहेड (समाप्ति की जानकारी, और इसी तरह) के लिए लगभग 50 अक्षर लेता है, साथ ही इसमें आपके द्वारा संग्रहीत मूल्य की लंबाई, जो सभी 4096-बाइट सीमा की ओर गिना जाता है। यदि आप पाँच अलग-अलग कुकीज़ के बजाय पाँच उपकुंजियों को संग्रहीत करते हैं, तो आप अलग कुकीज़ के ओवरहेड को बचा सकते हैं और लगभग 200 बाइट्स बचा सकते हैं।
पूरी तरह से मूल प्रश्न का पूरी तरह से सीधा जवाब नहीं है, लेकिन जिज्ञासु के लिए एक जटिल सीमक एल्गोरिथ्म को लागू किए बिना उनके कुकी सूचना भंडारण योजना को नेत्रहीन रूप से समझने की कोशिश करने के लिए प्रासंगिक है, यह स्ट्रिंग 4096 ASCII वर्ण बाइट्स है:
"abcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmn"