Computer >> कंप्यूटर ट्यूटोरियल >  >> प्रोग्रामिंग >> प्रोग्रामिंग

HTTP स्टेटलेस है तो वेब ब्राउज़र और वेब सर्वर के बीच सत्र कैसे बनाए रखें?

HTTP एक "स्टेटलेस" प्रोटोकॉल है जिसका अर्थ है कि हर बार जब कोई क्लाइंट एक वेबपेज पुनर्प्राप्त करता है, तो क्लाइंट वेब सर्वर से एक अलग कनेक्शन खोलता है और सर्वर स्वचालित रूप से पिछले क्लाइंट रिक्वेस्ट का कोई रिकॉर्ड नहीं रखता।

वेब क्लाइंट और सर्वर के बीच सत्र बनाए रखने के विकल्प

1. कुकीज़ (Cookies)

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

कमियां: ब्राउज़र कई बार कुकीज़ का समर्थन नहीं करता। सत्र बनाए रखने के लिए इस प्रक्रिया का उपयोग करने की अनुशंसा नहीं की जाती।

2. हिडन फॉर्म फील्ड्स (Hidden Form Fields)

एक वेब सर्वर एक अद्वितीय सत्र आईडी के साथ एक हिडन HTML फॉर्म फील्ड भेज सकता है:

<input type="hidden" name="sessionid" value="12345">

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

कमियां: नियमित हाइपरटेक्स्ट लिंक (<A HREF...>) पर क्लिक करने से फॉर्म सबमिशन नहीं होता, इसलिए हिडन फॉर्म फील्ड्स सामान्य सत्र ट्रैकिंग का समर्थन नहीं कर सकते।

3. URL रीराइटिंग (URL Rewriting)

आप प्रत्येक URL के अंत में कुछ अतिरिक्त डेटा जोड़ सकते हैं। यह डेटा सत्र की पहचान करता है; सर्वर उस सत्र पहचानकर्ता को उस डेटा के साथ जोड़ सकता है जो उसने उस सत्र के बारे में संग्रहीत किया है।

उदाहरण के लिए, https://example.com/file.htm;sessionid=12345 के साथ, सत्र पहचानकर्ता sessionid = 12345 के रूप में जुड़ा होता है जिसे वेब सर्वर पर क्लाइंट की पहचान के लिए एक्सेस किया जा सकता है।

लाभ: URL रीराइटिंग सत्र बनाए रखने का एक बेहतर तरीका है और उन ब्राउज़र्स के लिए काम करता है जो कुकीज़ का समर्थन नहीं करते।

कमियां: आपको हर URL को डायनामिक रूप से जनरेट करना होगा ताकि सत्र आईडी असाइन की जा सके, भले ही पेज एक साधारण स्टैटिक HTML पेज हो।

आधुनिक दृष्टिकोण: सर्वलेट/JSP सत्र API

उपरोक्त मैन्युअल तकनीकों के बजाय, सर्वलेट/JSP अंतर्निहित HttpSession ऑब्जेक्ट प्रदान करता है जो स्वचालित रूप से सत्र ट्रैकिंग को संभालता है (आमतौर पर कुकीज़ या URL रीराइटिंग का उपयोग करके)।

  • HttpSession session = request.getSession();
  • session.setAttribute("key", value);
  • session.getAttribute("key");

यह अनुशंसित दृष्टिकोण है क्योंकि यह सत्र प्रबंधन की जटिलताओं को संभालता है।

  1. अपने iPhone और iPad पर डिफॉल्ट वेब ब्राउज़र कैसे बदलें अपने iPhone और iPad पर डिफॉल्ट वेब ब्राउज़र कैसे बदलें

    Apple ने iOS 14 में एक नई सुविधा पेश की जो थर्ड-पार्टी ब्राउज़र्स को डिफॉल्ट ऐप्स के रूप में उपयोग करने की अनुमति देती है। इसका मतलब है कि यदि आप Apple के डिफॉल्ट सफारी ब्राउज़र के प्रशंसक नहीं हैं, तो आप एक विकल्प (जैसे Google Chrome) चुन सकते हैं जो लिंक पर टैप करते ही अपने आप खुल जाएगा। यहां iOS

  1. डार्क वेब को कैसे एक्सेस और ब्राउज़ करें डार्क वेब को कैसे एक्सेस और ब्राउज़ करें

    इस ट्यूटोरियल में, हम दिखाएंगे कि डार्क वेब को कैसे एक्सेस और ब्राउज़ करें। वेब का इतना हिस्सा आकस्मिक इंटरनेट उपयोगकर्ता से छिपा हुआ है। चूंकि इनमें से कई पेज Chrome, Firefox और अन्य इंटरनेट ब्राउज़र से पहुंच योग्य नहीं हैं, आप बस उनसे हाइपरलिंक नहीं कर सकते। यदि आप एक डार्क वेब लिंक पर जाते हैं,

  1. विंडोज 11 में अपने पसंदीदा ब्राउज़र को डिफ़ॉल्ट के रूप में सेट करें - चरण-दर-चरण गाइड विंडोज 11 में अपने पसंदीदा ब्राउज़र को डिफ़ॉल्ट के रूप में सेट करें - चरण-दर-चरण गाइड

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