
प्रपत्र का उपयोग फ़ॉर्म की सामग्री को व्यक्त करने के लिए किया जाता है; इसे प्रपत्र नियंत्रण के रूप में भी जाना जाता है। इन फॉर्मों को डेटा से भरा जाता है और फिर आगे की प्रक्रिया के लिए रिमोट मशीन को भेजा जाता है। फॉर्म के कामकाज में दो महत्वपूर्ण चीजें शामिल हैं: पूर्व कार्यक्रम का पता विनिर्देश है जो कार्रवाई की मदद से प्रपत्र सामग्री को संभालता है। बाद में मेथड स्पेसिफिकेशन है जिसके भीतर METHOD विशेषता की मदद से फॉर्म डेटा प्रवाहित होता है।
ACTION विशेषता बताती है, कि HTML फॉर्म को कैसे संभाला जाता है। METHOD विशेषता डेटा की सबमिशन प्रक्रिया का प्रबंधन करती है। GET और POST विधि METHOD विशेषता के अंतर्गत आती है।
तुलना चार्ट
तुलना के लिए आधार | प्राप्त | पद |
---|---|---|
पैरामीटर अंदर रखे गए हैं | यूआरआई | तन |
उद्देश्य | दस्तावेजों की पुनर्प्राप्ति | डेटा का अद्यतन |
क्वेरी परिणाम | बुकमार्क किए जाने में सक्षम। | बुकमार्क नहीं किया जा सकता है। |
सुरक्षा | सादे के रूप में मौजूद, कमजोर | GET विधि से अधिक सुरक्षित |
प्रपत्र डेटा प्रकार की बाधाएँ | केवल ASCII वर्णों की अनुमति है। | कोई बाधा नहीं, यहां तक कि द्विआधारी डेटा की अनुमति है। |
प्रपत्र डेटा लंबाई | यथासंभव न्यूनतम रखा जाना चाहिए। | किसी भी सीमा में झूठ बोल सकता है। |
दृश्यता | किसी के द्वारा देखा जा सकता है। | URL में वैरिएबल प्रदर्शित नहीं करता है। |
चर आकार | 2000 वर्ण तक। | 8 एमबी तक |
कैशिंग | विधि डेटा को कैश किया जा सकता है। | डेटा को कैश नहीं करता है। |
GET विधि की परिभाषा
HTML दस्तावेजों को लाने के लिए एक वेब सर्वर से URL का अनुरोध करने के लिए GET विधि का उपयोग किया जाता है। यह ब्राउज़रों के लिए एक पारंपरिक तरीका है जो HTTP प्रोटोकॉल के एक भाग के रूप में गिना जाता है। जीईटी विधि को URL के रूप में दर्शाया गया है, ताकि इसे बुकमार्क किया जा सके। खोज इंजन में बड़े पैमाने पर GET का उपयोग किया जाता है। खोज इंजन के लिए उपयोगकर्ता द्वारा एक क्वेरी प्रस्तुत करने के बाद, इंजन क्वेरी को निष्पादित करता है और परिणामी पृष्ठ देता है। क्वेरी परिणामों को लिंक (बुकमार्क किए गए) के रूप में सेट किया जा सकता है।
जीईटी विधि एंकरों की पीढ़ी को सक्षम करती है, जो प्रपत्र के उपयोग से रहित क्वेरी के साथ CGI कार्यक्रम तक पहुंचने में मदद करती है। क्वेरी का निर्माण एक लिंक में किया जाता है, इसलिए जब लिंक का दौरा किया जाता है तो CGI प्रोग्राम डेटाबेस से उपयुक्त जानकारी प्राप्त करेगा।
GET विधि में कुछ सुरक्षा समस्याएँ हैं क्योंकि सम्मिलित डेटा URL में दिखाई देता है। केवल एक सीमित मात्रा में डेटा को एक GET विधि के माध्यम से पारित किया जा सकता है, क्योंकि URL की लंबाई जो एक ब्राउज़र को पार कर सकता है वह एक हजार वर्ण हो सकता है।
जीईटी पद्धति के बारे में एक और मुद्दा यह है कि यह विदेशी भाषाओं के साथ सौदा नहीं कर सकता है। GET विधि का उपयोग करने का सुझाव नहीं दिया गया है लेकिन फिर भी जब विधि विशेषताओं को परिभाषित नहीं किया जाता है तो GET विधि का उपयोग डिफ़ॉल्ट के रूप में किया जाता है।
POST विधि की परिभाषा
POST विधि उस स्थिति में उपयुक्त है जहां महत्वपूर्ण मात्रा में जानकारी गुजर सकती है। जब कोई सर्वर POST को लागू करने वाले फॉर्म के द्वारा अनुरोध प्राप्त करता है, तो यह बाईं जानकारी के लिए "सुनता" रहता है। सरल शब्दों में, विधि URL के अनुरोध के तुरंत बाद फॉर्म इनपुट की सभी प्रासंगिक जानकारी को स्थानांतरित कर देती है।
POST विधि को वेब सर्वर के साथ दो संपर्क स्थापित करने की आवश्यकता है जबकि GET सिर्फ एक बनाता है। POST में अनुरोध उसी तरह से प्रबंधित किए जाते हैं जैसे कि यह GET विधि में प्रबंधित किया जाता है, जहां रिक्त स्थान को प्लस (+) चिह्न में दर्शाया जाता है और URL पैटर्न में बाकी अक्षर एन्कोड किए जाते हैं। यह एक फ़ाइल के आइटम भी भेज सकता है।
HTML में GET और POST विधि के बीच मुख्य अंतर
- GET विधि पैरामीटर को URI के अंदर रखती है जबकि POST विधि शरीर में मापदंडों को लागू करती है।
- GET का उपयोग अनिवार्य रूप से सूचना प्राप्त करने के लिए किया जाता है। जैसा कि, POST पद्धति का उद्देश्य डेटा को अद्यतन करना है।
- POST क्वेरी परिणामों को बुकमार्क नहीं किया जा सकता है जबकि GET क्वेरी परिणाम बुकमार्क किए जा सकते हैं क्योंकि यह URL के रूप में मौजूद है।
- जीईटी विधि में जानकारी URL में दिखाई देती है जो कमजोरियों और हैकिंग के जोखिम को बढ़ाती है। इसके विपरीत, POST विधि URL में वैरिएबल नहीं दिखाती है और इसमें कई एन्कोडिंग तकनीकों का उपयोग भी किया जा सकता है, जो इसे लचीला बनाते हैं।
- जब फॉर्म में GET विधि का उपयोग किया जाता है, तो डेटा प्रकारों में केवल ASCII वर्ण स्वीकार किए जाते हैं। इसके विपरीत, POST विधि डेटा प्रकारों को बांधती नहीं है और बाइनरी के साथ-साथ ASCII वर्णों को भी अनुमति देती है।
- GET विधि में परिवर्तनशील आकार लगभग 2000 वर्ण है। इसके विपरीत, POST विधि 8 एमबी चर आकार तक की अनुमति देती है।
- जीईटी विधि का डेटा उपलब्ध नहीं है, जबकि पीओटी पद्धति का डेटा नहीं है।
जीईटी का उदाहरण
जब उपयोगकर्ता ब्राउज़र के स्थान बार में किसी भी URL में प्रवेश करता है, जैसे http // www.example.com / xyz / file1.htm । फिर पता वैध HTTP GET अनुरोध में बदल जाता है, उदाहरण के लिए, GET / xyz / file1.htm HTTP / 1.0 ।
यह अनुरोध तब सर्वर www.example.com पर स्थानांतरित कर दिया जाता है। अनुरोध xyz निर्देशिका में file1.htm के लिए पूछता है, और क्या यह HTTP की 1.0 बोली से जुड़ रहा है। यहां उपयोगकर्ता को फ़ाइल सबमिट करने के बाद खुद से फ़ाइल नहीं मिलती है, वास्तविकता में प्रपत्र डेटा को संभालने के लिए पृष्ठभूमि में एक प्रोग्राम चल रहा है।
उपयोगकर्ता को इसके निष्पादन के लिए प्रोग्राम के नाम के साथ फॉर्म डेटा पास करना होगा। इस निष्पादन को प्राप्त करने के लिए, प्रपत्र की जानकारी अनुरोधित URL में संलग्न की जाती है। यह वास्तविक डेटा के साथ सौ चरित्र वाले URL को उत्पन्न करता है, उदाहरण के लिए, //www.example.com/cgi-x/comments.exe?Name=AI+Alena&Age=23&Gender=fkind ।
POST का उदाहरण
किसी प्रपत्र द्वारा भेजा गया डेटा नाम = AI + Alena & Age = 23 और Gender = महिला की तरह दिखाई दे सकता है। प्रोग्राम डेटा को विभाजित करके डेटा को संभालता है। प्रपत्र डेटा POST पद्धति में ENCTYPE विशेषता का उपयोग करके अलग-अलग एन्कोड किया जा सकता है।
प्रपत्र सामग्री आमतौर पर URL में नहीं देखी जाती है और इसका मुख्य लाभ यह है कि POST पद्धति का उपयोग करके काफी मात्रा में डेटा प्रस्तुत किया जा सकता है।
निष्कर्ष
GET और POST विधि का उपयोग सर्वर को डेटा भेजने के लिए किया जाता है, और उनके बीच मुख्य अंतर यह है कि GET विधि डेटा को क्रिया की विशेषता में परिभाषित URI में जोड़ देती है। इसके विपरीत, POST विधि अनुरोधित निकाय को डेटा संलग्न करती है। जीईटी पद्धति का उपयोग अनुचित है जब संवेदनशील जानकारी को फॉर्म में भरने की आवश्यकता होती है। उपयोगकर्ता द्वारा पासवर्ड या अन्य गोपनीय जानकारी भरने के लिए POST विधि उपयोगी है।