प्राप्त करें बनाम पोस्ट
यदि सर्वर से अनुरोधित URL के साथ फॉर्म डेटा एन्कोड किया गया है, तो इसे गेट कहा जाता है, जबकि, यदि फॉर्म डेटा संदेश के मुख्य भाग में भेजा जाता है, तो इसे पोस्ट कहा जाता है। जब आपके पास URL के साथ कोई अतिरिक्त जानकारी नहीं है, तो इस फॉर्म का उपयोग किया जा रहा है।
हम अपने वेब ब्राउज़र में जो HTML पृष्ठ पढ़ते हैं, वे स्थिर प्रकृति के होते हैं। ये स्थिर दस्तावेज़ हैं और जब हम किसी वेब पेज के साथ सक्रिय रूप से बातचीत करते हैं, तो आपको डेटा को किसी भी तरह से अलग करने के लिए वापस भेजना होगा। यह प्रपत्रों के उपयोग से प्राप्त किया जाता है और ऐसी दो विधियाँ हैं जिनके द्वारा आप किसी प्रपत्र का उपयोग कर सकते हैं; प्राप्त करें और पोस्ट करें। प्रपत्र का उपयोग करके, डेटा को सर्वर पर वापस भेजने के लिए एन्कोड किया जाता है।अब, गेट और पोस्ट में सटीक अंतर क्या है?
यदि डेटा सर्वर से अनुरोधित URL के साथ एन्कोड किया गया है, तो इसे HTML विनिर्देशों के अनुसार गेट कहा जाता है। डेटा प्राप्त करने वाले एप्लिकेशन द्वारा प्रपत्र डेटा को URL से अलग किया जाता है। URL को पार्स करने और डेटा बनाने के बाद, इसे क्वेरी के लिए इनपुट के रूप में उपयोग किया जाता है। यदि आप वेब यूआरएल के अंत में बंधे हुए मूल्यों और चरों की लंबी पूंछ देखते हैं, तो आप समझ सकते हैं कि आप गेट क्वेरी से निपट रहे हैं। यदि आप गेट रिक्वेस्ट के साथ काम कर रहे हैं तो सभी क्वेरी जानकारी के साथ, आप पूरे यूआरएल को बुकमार्क कर सकते हैं। इसलिए जब आप बुकमार्क को दोबारा खोलते हैं तो आप निश्चित रूप से क्वेरी के परिणाम देख सकते हैं।
यदि संदेश के मुख्य भाग में प्रपत्र डेटा भेजा जाता है, तो इसे पोस्ट कहा जाता है। जब आपके पास यूआरएल के साथ कोई अतिरिक्त जानकारी नहीं है, तो इस फॉर्म का इस्तेमाल किया जा रहा है। गेट की तुलना में पोस्ट को उपयोगकर्ता के ब्राउज़र इतिहास में कैश नहीं किया जा सकता है। यह स्थिति ऐसी स्थिति उत्पन्न करती है कि पृष्ठ को वेब सर्वर पर जानकारी पुनः सबमिट करनी पड़ती है।आपने रात में अक्सर इस स्थिति का सामना किया है।
अक्सर यह अनुशंसा की जाती है कि जब आप फॉर्म विकसित करते हैं तो आपको गेट का उपयोग करना होगा और केवल कुछ शर्तों में आपको पोस्ट का उपयोग करना होगा। यदि कोई वेरिएबल ब्राउज़र को क्रैश कर देता है या यदि यह URL को बहुत लंबा कर देता है, तो आप पोस्ट फॉर्म का उपयोग कर सकते हैं। पोस्ट का उपयोग करने के कई फायदे हैं क्योंकि यह बेहतर फॉर्म है जिसका आप उपयोग कर सकते हैं यदि आपको अपने एप्लिकेशन की कार्यक्षमता को छिपाने या अन्य उपयोगकर्ताओं के लिए कम दृश्यमान बनाने की आवश्यकता है। लेकिन यह सुरक्षा का वादा नहीं है क्योंकि कोई भी आपके द्वारा उपयोग किए जाने वाले वेरिएबल्स को आपके एप्लिकेशन के सोर्स कोड से समझ सकता है।
गेट और पोस्ट के बीच प्रमुख अंतरों को इस प्रकार रेखांकित किया जा सकता है:
दृश्यता
यह गेट और पोस्ट विधियों के बीच मूलभूत अंतर है। अनुरोध प्राप्त करें URL में संलग्न है जैसा कि एक प्रश्न चिह्न द्वारा अलग किया गया है। पोस्ट अनुरोध को नहीं देखा जा सकता क्योंकि यह HTTP बॉडी में एनकैप्सुलेटेड है।
प्रदर्शन
गेट रिक्वेस्ट बनाना अपेक्षाकृत आसान है और यह पोस्ट रिक्वेस्ट की तुलना में बहुत तेज है। लेकिन पोस्ट अनुरोध को इनकैप्सुलेशन प्रक्रिया में समय लगता है।
डेटा प्रकार
चूंकि अनुरोध प्राप्त करें यूआरएल के माध्यम से भेजा जाता है, यह केवल टेक्स्ट प्रारूप का हो सकता है। लेकिन पोस्ट के मामले में ऐसा कोई प्रतिबंध नहीं है और यह बाइनरी और टेक्स्ट डेटा दोनों को ले जा सकता है।
डेटा सेट
“Enctype” एट्रिब्यूट वैल्यू के साथ पोस्ट रिक्वेस्ट के साथ इस्तेमाल किया जा सकता है जबकि गेट रिक्वेस्ट केवल ASCII कैरेक्टर का इस्तेमाल कर सकते हैं।
यदि फॉर्म का कोई दुष्प्रभाव नहीं होता है, तो "GET" पद्धति का उपयोग किया जा सकता है। अधिकांश डेटाबेस GET पद्धति के उपयोग के लिए आदर्श हैं।