HTTP - पैरामीटर्स

यह अध्याय कुछ महत्वपूर्ण HTTP प्रोटोकॉल पैरामीटर्स और उनके सिंटैक्स को सूची में उपयोग करने के तरीके के बारे में बताने जा रहा है। उदाहरण के लिए, तारीख का प्रारूप, URL का प्रारूप इत्यादि, यह HTTP क्लाइंट या सर्वर प्रोग्राम लिखते समय आपके अनुरोध और प्रतिक्रिया संदेशों के निर्माण में आपकी सहायता करेगा। आप HTTP अनुरोधों और प्रतिक्रियाओं के लिए संदेश संरचना सीखते समय बाद के अध्यायों में इन मापदंडों का पूरा उपयोग देखेंगे।

HTTP संस्करण

HTTP का उपयोग करता है a <major>.<minor>प्रोटोकॉल के संस्करणों को इंगित करने के लिए नंबरिंग योजना। HTTP संदेश का संस्करण पहली पंक्ति में HTTP- संस्करण फ़ील्ड द्वारा इंगित किया गया है। यहाँ HTTP वर्जन नंबर निर्दिष्ट करने का सामान्य सिंटैक्स है:

HTTP-Version   = "HTTP" "/" 1*DIGIT "." 1*DIGIT

उदाहरण

HTTP/1.0

or

HTTP/1.1

यूनिफ़ॉर्म रिसोर्स आइडेंटिफ़ायर

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

URI = "http:" "//" host [ ":" port ] [ abs_path [ "?" query ]]

यहाँ यदि port खाली है या नहीं दिया गया है, पोर्ट 80 को HTTP और एक खाली के लिए मान लिया गया है abs_path के बराबर है abs_pathका "/"। पात्रों के अलावा अन्य उन मेंreserved तथा unsafe सेट उनके ""% "HEX HEX" एन्कोडिंग के बराबर हैं।

उदाहरण

निम्नलिखित तीन यूआरआई समतुल्य हैं:

http://abc.com:80/~smith/home.html
http://ABC.com/%7Esmith/home.html
http://ABC.com:/%7esmith/home.html

दिनांक / समय प्रारूप

बिना किसी अपवाद के सभी HTTP दिनांक / समय टिकटों को ग्रीनविच मीन टाइम (GMT) में दर्शाया जाना चाहिए। HTTP एप्लिकेशन को दिनांक / समय टिकटों के निम्नलिखित तीन प्रतिनिधित्वों में से किसी का उपयोग करने की अनुमति है:

Sun, 06 Nov 1994 08:49:37 GMT  ; RFC 822, updated by RFC 1123
Sunday, 06-Nov-94 08:49:37 GMT ; RFC 850, obsoleted by RFC 1036
Sun Nov  6 08:49:37 1994       ; ANSI C's asctime() format

चरित्र सेट

हम उस कैरेक्टर सेट को निर्दिष्ट करने के लिए कैरेक्टर सेट का उपयोग करते हैं जो क्लाइंट पसंद करता है। एकाधिक वर्ण सेट को अल्पविराम से अलग करके सूचीबद्ध किया जा सकता है। यदि कोई मान निर्दिष्ट नहीं है, तो डिफ़ॉल्ट US-ASCII है।

उदाहरण

मान्य वर्ण सेट निम्नलिखित हैं:

US-ASCII

or

ISO-8859-1

or 

ISO-8859-7

सामग्री एनकोडिंग

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

सभी सामग्री-कोडिंग मान केस-असंवेदनशील हैं। HTTP / 1.1 स्वीकार-एन्कोडिंग और सामग्री-एन्कोडिंग हेडर फ़ील्ड में सामग्री-कोडिंग मूल्यों का उपयोग करता है जिसे हम बाद के अध्यायों में देखेंगे।

उदाहरण

मान्य एन्कोडिंग योजनाएं निम्नलिखित हैं:

Accept-encoding: gzip

or

Accept-encoding: compress

or 

Accept-encoding: deflate

मीडिया प्रकार

HTTP इंटरनेट मीडिया प्रकार का उपयोग करता है Content-Type तथा Acceptहेडर फ़ील्ड खुली और एक्स्टेंसिबल डेटा टाइपिंग और टाइप बातचीत प्रदान करने के लिए। सभी मीडिया प्रकार के मान इंटरनेट असाइन किए गए नंबर प्राधिकरण (IANA) के साथ पंजीकृत हैं। मीडिया प्रकार को निर्दिष्ट करने के लिए सामान्य वाक्यविन्यास निम्नानुसार है:

media-type     = type "/" subtype *( ";" parameter )

प्रकार, उपप्रकार और पैरामीटर विशेषता नाम मामले हैं - असंवेदनशील।

उदाहरण

Accept: image/gif

भाषा टैग

HTTP भाषा के टैग का उपयोग करता है Accept-Language तथा Content-Languageखेत। एक भाषा टैग एक या एक से अधिक भागों से बना होता है: एक प्राथमिक भाषा टैग और संभवत: सबटैग की खाली श्रृंखला:

language-tag  = primary-tag *( "-" subtag )

टैग के भीतर सफेद रिक्त स्थान की अनुमति नहीं है और सभी टैग केस-असंवेदनशील हैं।

उदाहरण

उदाहरण टैग में शामिल हैं:

en, en-US, en-cockney, i-cherokee, x-pig-latin

जहाँ कोई भी दो अक्षर का प्राथमिक-टैग ISO-639 भाषा का संक्षिप्त नाम है और कोई भी दो अक्षर का प्रारंभिक उपटैग ISO-3166 देश कोड है।