HTTP पोस्ट अनुरोध में पैरामीटर कैसे भेजे जाते हैं?


Answers

सामग्री HTTP शीर्षलेख के बाद रखी जाती है। HTTP पोस्ट का प्रारूप HTTP हेडर होना चाहिए, उसके बाद रिक्त रेखा के बाद, अनुरोध निकाय के बाद। POST चर को शरीर में कुंजी-मूल्य जोड़े के रूप में संग्रहीत किया जाता है।

आप इसे नीचे दिखाए गए HTTP पोस्ट की कच्ची सामग्री में देख सकते हैं:

POST /path/script.cgi HTTP/1.0
From: frog@jmarshall.com
User-Agent: HTTPTool/1.0
Content-Type: application/x-www-form-urlencoded
Content-Length: 32

home=Cosby&favorite+flavor=flies

आप इसे फिडलर जैसे टूल का उपयोग करके देख सकते हैं, जिसका उपयोग आप कच्चे HTTP अनुरोध और तार में भेजे गए प्रतिक्रिया पेलोड को देखने के लिए कर सकते हैं।

Question

एक HTTP GET अनुरोध में, पैरामीटर क्वेरी स्ट्रिंग के रूप में भेजे जाते हैं:

http://example.com/page?parameter=value&also=another

HTTP पोस्ट अनुरोध में, पैरामीटर यूआरआई के साथ नहीं भेजे जाते हैं।

मूल्य कहां हैं? अनुरोध हेडर में? अनुरोध निकाय में? वो कैसा दिखता है?




आप सीधे ब्राउज़र यूआरएल बार पर टाइप नहीं कर सकते हैं।

उदाहरण के लिए आप लाइव HTTP हेडर के साथ इंटरनेट पर POST डेटा कैसे भेज सकते हैं। परिणाम ऐसा कुछ होगा

http://127.0.0.1/pass.php
POST /pass.php HTTP/1.1

Host: 127.0.0.1
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:18.0) Gecko/20100101 Firefox/18.0
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate
DNT: 1
Referer: http://127.0.0.1/pass.php
Cookie: passx=87e8af376bc9d9bfec2c7c0193e6af70; PHPSESSID=l9hk7mfh0ppqecg8gialak6gt5
Connection: keep-alive
Content-Type: application/x-www-form-urlencoded
Content-Length: 30
username=zurfyx&pass=password

यह कहां कहा गया है

Content-Length: 30
    username=zurfyx&pass=password

पोस्ट मूल्य होंगे।




HTTP POST में फॉर्म मान अनुरोध निकाय में भेजे गए हैं, क्वेरीस्ट्रिंग के समान प्रारूप में।

अधिक जानकारी के लिए, spec देखें।




Related