Chrome स्थानीय jQuery कुकीज़ की उपेक्षा क्यों करता है?


83

कुकी को सेट और पढ़ने के लिए मैं jQuery कुकी प्लगइन ( डाउनलोड और डेमो और टिप्पणियों के साथ स्रोत कोड ) का उपयोग कर रहा हूं । मैं अपनी स्थानीय मशीन पर पेज विकसित कर रहा हूं ।

निम्नलिखित कोड सफलतापूर्वक FireFox 3, IE 7 और Safari (PC) में एक कुकी सेट करेगा। लेकिन अगर ब्राउज़र Google क्रोम है और पृष्ठ एक स्थानीय फ़ाइल है , तो यह काम नहीं करता है।

$.cookie("nameofcookie", cookievalue, {path: "/", expires: 30});

मुझे क्या पता :

  • प्लगइन का डेमो क्रोम के साथ काम करता है।
  • अगर मैं अपना कोड किसी वेब सर्वर (http: // से शुरू होने वाला) पर डालता हूं, तो यह क्रोम के साथ काम करता है।

तो कुकी केवल स्थानीय फ़ाइलों पर Google Chrome के लिए विफल हो जाती है ।

संभावित कारण :

  • Google Chrome हार्ड ड्राइव (पथ जैसे फ़ाइल: /// C: /websites/foo.html) पर वेब पृष्ठों से कुकीज़ स्वीकार नहीं करता है
  • प्लगइन के निहितार्थ में कुछ कारण क्रोम को ऐसी कुकीज़ को अस्वीकार करने का कारण बनता है

क्या कोई इसकी पुष्टि कर सकता है और मूल कारण की पहचान कर सकता है?


जब आप कहते हैं कि डेमो काम करता है, तो क्या इसका मतलब है कि अगर आप इसे अपनी हार्ड ड्राइव पर सहेजते हैं और इसे फ़ाइल की तरह एक्सेस करते हैं: //?
ग्रेग

नहीं - बस क्रोम के साथ ऊपर दिए गए लिंक को एक्सेस करना।
नाथन लॉन्ग

जवाबों:


94

Chrome स्थानीय फ़ाइलों के लिए कुकीज़ का समर्थन नहीं करता है (या, पीटर लियोंस, जैसे लोकलहोस्ट * *) जब तक आप इसे -नेबल-फ़ाइल-कुकीज़ ध्वज के साथ शुरू नहीं करते हैं। आप इसके बारे में एक चर्चा http://code.google.com/p/chromium/issues/detail?id=535 पर पढ़ सकते हैं ।

* यदि आप सीधे स्थानीय आईपी पते (127.0.0.1) का उपयोग करते हैं तो क्रोम कुकीज़ का समर्थन करता है । इसलिए लोकलहोस्ट मामले में, यह एक आसान समाधान हो सकता है।


आईपी ​​के लिए डोमेन सेट करना मेरे लिए काम नहीं करता था, लेकिन यह काम करता था यदि मैंने डोमेन को हटा दिया था (स्थानीय रूप से, हमें उत्पादन के लिए डोमेन की आवश्यकता है)
काइओटिक

Mac OSX पर फ्लैग के साथ क्रोम शुरू करने के लिए --enable-file-कुकीज में टर्मिनल कॉमनड का उपयोग करें: 'खुले / अनुप्रयोग / Google \ Chrome.app/Contents/MacOS/Google \ Chrome --args --enable-file- कुकीज़ - (या अपने Chrome.app स्थान के अनुसार इसे ट्विक करें)
Pechech


5

मैं कुछ समस्या थी और यह इस भयानक समाधान हल किया। स्टोर और कुकी प्लगइन का एक साथ उपयोग करना।

<script src="js/jquery.cookies.2.2.0.js" type="text/javascript"></script>
<script src="js/jquery.Storage.js" type="text/javascript"></script>

var is_chrome = navigator.userAgent.toLowerCase().indexOf('chrome') > -1;

//get cookies
var helpFlag=(is_chrome)?$.Storage.get("helpFlag"):$.cookies.get("helpFlag");

//set cookies
if(is_chrome)$.Storage.set("helpFlag", "1");else $.cookies.set("helpFlag", "1");

मुझे पता है कि यह सही समाधान नहीं है, लेकिन मेरे लिए काम करता है


4

इसने मेरे लिए काम किया:

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

अपने क्रोम आइकन पर राइट क्लिक करें और गुण, शॉर्टकट टैब चुनें और लक्ष्य पथ के अंतिम में --enable-file-कुकी जोड़ें।


3

मेरे पास एक ही मुद्दा था, कृपया इसके बजाय लोकलहोस्ट के आईपी पते का उपयोग करने का प्रयास करें। उदाहरण के लिए "http://127.0.0.1/yoursite/"


3

कृपया कुकीज़ और Google Analytics देखें

$.cookie("nameofcookie", cookievalue, {path: "/", expires: 30});

इस लाइन को बदल दें

$.cookie("nameofcookie", cookievalue, {*Path:* "/", expires: 30});

यह परियोजना काम ठीक है।


1
धन्यवाद, मामले को "पथ" में बदलने से मेरी समस्या ठीक हो गई
ओटो कानेलिस

2

एक अन्य संभावित कारण यह है path: "/", क्योंकि आप एक सामान्य वेब URL का उपयोग नहीं कर रहे हैं, /शायद इसका मतलब ज्यादा नहीं है - बिल्कुल भी रास्ता निर्धारित किए बिना प्रयास करें।


अच्छा विचार है, लेकिन '/' वैसे भी डिफ़ॉल्ट है। मैंने 'फ़ाइल: /// C: /' की कोशिश की, लेकिन मुझे लगता है कि इस संदर्भ में यह बकवास है।
नाथन लॉन्ग

0

यदि आप क्रोमिनम का उपयोग करते हैं तो यह स्थानीय कुकीज़ को सक्षम करने के लिए कमांड है

क्रोमियम-ब्राउजर - फाइल-कुकीज

यह क्रोम के लिए एक ही बात है

आशा है कि यह आपकी मदद करेगा!


0

वर्कअराउंड के रूप में आप स्थानीय फ़ाइलों तक पहुँच के साथ टैम्परमोंकि का उपयोग कर सकते हैं ( टैम्परमॉन्की स्क्रिप्ट में लोकल htm पेज कैसे शामिल करें? ) इस तरह से आप टेम्परमॉन्की के स्टोरेज का उपयोग करेंगे, और GM_getValue (डेटा) और डेटा द्वारा अपना डेटा सेट और प्राप्त कर सकेंगे। GM_setValue (डेटा)। मैंने अपने स्थानीय HTML पेज के लिए, जिसका उपयोग मैंने विंडोज एक्सप्लोरर में अनुकूलन योग्य विकल्प के रूप में किया था

लेकिन वास्तव में यूरी के जवाब से लोकलस्टेज सही काम करता है।

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