हमारे उपयोगकर्ताओं में से एक से एक शिकायत के बाद और चल कुछ परीक्षण यह फ़ायरफ़ॉक्स 15 और 16 (और शायद पुराने संस्करण) प्रकट होता है यह इसलिए यदि आप कुकीज़ को अक्षम आप भी को निष्क्रिय कर स्थानीय भंडार। तुम भी जब भी आप window.localStorage
आप Error: The operation is insecure.
समाधान कुकीज़ और इस तरह localStorage अक्षम करने - polyfill संभव नहीं
मिल तक पहुँचने के लिए एक कोशिश पकड़ फेंकने आप यदि यह अक्षम है देखने के लिए जाँच करने देगा कोशिश के रूप में इसके लिए एक polyfill नहीं बना सकते हैं, लेकिन नहीं दूँगी आप अपने खुद के समाधान के साथ चर की जगह । निम्नलिखित त्वरित polyfill काम नहीं करेगा क्योंकि एफएफ चर की स्थापना पर ध्यान नहीं देता है और जब यह तक पहुँचने का प्रयास वही त्रुटि फेंक देगा:
try{
window.localStorage;
}catch(err){
window.localStorage = {
getItem: function(k){
return this.k;
},
setItem: function(k,v){
this.k = v;
}
};
}
एकमात्र समाधान अन्य चर "नकली" localStorage लिए कदम प्रतीत हो रहा है, लेकिन यह होगा परेशान होना क्योंकि हमारे पास बहुत सारे कोड हैं और एक जेएस lib है जो इस चर को एक्सेस करने पर भरोसा करता है। कोई समाधान?
संपादित करें: कुकीज़ को आवश्यक उपयोगकर्ताओं को बताने के लिए केवल एक चेतावनी पॉप अप करना इष्टतम नहीं है। यदि आगंतुक सिर्फ साइट देखना चाहते हैं और साइनअप नहीं करना चाहते हैं तो उन्हें वास्तव में कुकीज़ की आवश्यकता नहीं है। लेकिन एक backbone.js आवेदन किया जा रहा है और डेटा का एक बहुत चारों ओर गुजर, हम दुकान सामान localStorage में काफ़ी है।
यदि आप यह जांच सकते हैं कि यह अक्षम है या नहीं, तो बस एक चेतावनी या कुछ बताएं कि उन्हें आपकी साइट के लिए कुकीज़ सक्षम करने की आवश्यकता है। – MrOBrian
धन्यवाद श्री ओब्रियन, मैंने ऐसा किया और संदेश के साथ एक div इंजेक्शन कर रहा हूं लेकिन स्थानीय स्टोरेज के लिए केवल एक कुंजी/वैल्यू स्टोर के रूप में काम करने के लिए इष्टतम होगा जो कि जारी नहीं रहा था, क्योंकि उपयोगकर्ता यही चाहता है। –
"लेकिन स्थानीय स्टोरेज के लिए केवल एक कुंजी/वैल्यू स्टोर के रूप में काम करने के लिए इष्टतम होगा जो" "जारी नहीं रहेगा, इस मामले में केवल एक साधारण जेएस सरणी का उपयोग क्यों न करें? –