asp.net - net - एस्प नेट क्या है




एएसपी.नेट में, मुझे सत्र के बजाय सत्र। क्लीयर() का उपयोग कब करना चाहिए। एबैंडन()? (4)

दोनों सत्र। क्लीयर () और सत्र। एबैंडन () सत्र चर से छुटकारा पाएं। जैसा कि मैं इसे समझता हूं, Abandon () वर्तमान सत्र को समाप्त करता है, और एक नया सत्र बनने का कारण बनता है जिससे अंत और प्रारंभ घटनाएं आग लगती हैं।

ऐसा लगता है कि ज्यादातर मामलों में Abandon () को कॉल करना बेहतर होता है, जैसे उपयोगकर्ता को लॉग आउट करना। क्या ऐसे परिदृश्य हैं जहां मैं साफ़ () का उपयोग करूंगा? क्या प्रदर्शन में बहुत अंतर है?


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

इस कारण से, उपयोगकर्ता को लॉग आउट करते समय यह सत्र का उपयोग करने के लिए सुरक्षित और अधिक समझदार होगा। एबैंडन () ताकि सत्र नष्ट हो जाए, और एक नया सत्र बनाया गया हो (भले ही लॉगआउट UI पृष्ठ नए सत्र का हिस्सा होगा, नए सत्र में इसमें कोई भी उपयोगकर्ता विवरण नहीं होगा और नए सत्र को अपहृत करने के लिए एक नया सत्र होने के बराबर होगा, इसलिए यह म्यूट होगा)।


मुझे अभी भी यकीन नहीं है कि असली दुनिया का उदाहरण कहां है, जहां आप Session.Abondon() उपयोग करेंगे। Session.Abondon() , Session.Clear()Session.Clear()

मैं समझ सकता हूं ... यदि उपयोगकर्ता आपके लॉगआउट लिंक पर क्लिक करता है और आप उन्हें अपने "लॉग आउट कर चुके हैं" पृष्ठ पर ले जाते हैं .... उनका ब्राउज़र सत्र अभी भी जारी है लेकिन आप सत्र में संग्रहीत जानकारी को हटाना चाहते हैं। यदि आपने सत्र को छोड़ दिया है तो "नया लॉग आउट" पृष्ठ के लिए तुरंत एक नया सत्र बनाया जाएगा।


सत्र। Session.Abandon ऊपर बताए गए सत्र को नष्ट कर देता है ताकि किसी को लॉग आउट करते समय आपको इसका उपयोग करना चाहिए। मुझे लगता है कि Session.Clear का अच्छा उपयोग। Session.Clear ईकॉमर्स वेबसाइट पर शॉपिंग टोकरी के लिए होगा। इस तरह टोकरी उपयोगकर्ता को लॉग आउट किए बिना साफ़ कर दिया जाता है।


सत्र। Session.Abandon() सत्र को नष्ट कर देता है और सत्र_ऑनएंड ईवेंट ट्रिगर होता है।

Session.Clear() ऑब्जेक्ट से सभी मानों (सामग्री) को हटा देता है । एक ही कुंजी के साथ सत्र अभी भी जीवित है।

इसलिए, यदि आप सत्र का उपयोग करते हैं। Session.Abandon() , तो आप उस विशिष्ट सत्र को खो देते हैं और उपयोगकर्ता को एक नई सत्र कुंजी मिल जाएगी। उदाहरण के लिए आप इसका उपयोग कर सकते हैं जब उपयोगकर्ता लॉग आउट करता है।

सत्र का उपयोग करें। Session.Clear() , यदि आप चाहते हैं कि उपयोगकर्ता एक ही सत्र में शेष (यदि आप नहीं चाहते हैं कि उपयोगकर्ता उदाहरण के लिए रिलागिन करें) और सभी सत्र विशिष्ट डेटा रीसेट करें।





session-state