2012-05-27 14 views
5

$ कुकी द्वारा कुकी सेट को नहीं पढ़ रहा है। कुकी कुकीज को पढ़ नहीं रहा है जो पहले सर्वर प्रतिक्रिया द्वारा सेट किया गया था।

मैं कुकीज़ को पढ़ सकता हूं जो $ .cookie() के साथ सेट किया गया है।

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

मैंने बिना किसी लाभ के समाप्ति समय के साथ प्रयोग किया है। http://en.wikipedia.org/w/index.php?title=HTTP_cookie#HttpOnly_cookie

कुकीज़ इस तरह से भेजा document.cookie के माध्यम से सुलभ नहीं हैं:

+0

यदि आप कुकीज़ की पूरी तरह से तुलना करते हैं तो क्या होगा? अगर वे अलग-अलग व्यवहार करते हैं - तो कुछ अंतर होता है – zerkms

उत्तर

6

समस्या यह है कि सर्वर साइड के रूप में यहाँ वर्णित केवल Http साथ कुकीज़ भेज रहा है की स्थापना है। यह आमतौर पर आपकी साइट पर संभावित एक्सएसएस हमलों के खिलाफ कुकी मूल्य की सुरक्षा में मदद के लिए उपयोग किया जाता है।

संपादित करें: आपने कुकीज सेट करने के लिए सर्वर की ओर से कौन सी तकनीक का उपयोग कर रहे हैं इसका उल्लेख नहीं किया है। मामले में आप PHP का उपयोग कर रहे हैं, इस लिंक को सूचीबद्ध करती संभव तरीके केवल Http ध्वज सेट किया जा सकता है:

https://www.owasp.org/index.php/HttpOnly#Using_PHP_to_set_HttpOnly

1

अद्यतन: मैं अपने मूल जवाब में गलत था (देखें नीचे) ... पेज और नीचे पथ पेड़ ऊपरी स्तर की कुकीज़ पढ़ सकता है, इसलिए पथों को बिल्कुल मेल नहीं करना पड़ेगा। अगर कोई और एक ही गलती करता है तो मेरा मूल उत्तर छोड़ना। मेरी समस्या जावास्क्रिप्ट से एक कुकी सेट करने के बाद हुई थी, फिर कुकी सर्वर पक्ष को संशोधित करने का प्रयास कर रहा था। पथ "/" के साथ सर्वर लक्षित कुकी, इसलिए पथ "/ mypages" के साथ कुकी बदल नहीं गई थी।

$ .cookie केवल वर्तमान दस्तावेज़ पथ के अंतर्गत कुकीज़ पढ़ सकते हैं, तो अपने पेज है अगर> mysite.com/mypages/mypage.aspx, सर्वर पथ के रूप में सेट हो जाएगा "/" जब एक कुकी की स्थापना, > लेकिन $। कुकी ने पथ "/ mypages" से पढ़ने की कोशिश की और कुकी को पढ़ने में विफल रहे। मैं बस इस समस्या में खुद भाग गया। यदि आपके पास इस तरह के अलग-अलग पथ नहीं हैं, तो यह संभावना है> आपकी समस्या नहीं।

संबंधित मुद्दे