2009-03-04 12 views
6

http://asdf.com/something.do?param1=true?param2=false फ़ॉर्म के यूआरएल वैध हैं?http में एकाधिक पैरा अनुरोध प्राप्त करते हैं

मुझे दूसरा नहीं लगता? वैध यूआरएल में अनुमति है और यह इसके बजाय एक एम्पर्सेंड() होना चाहिए, लेकिन मैं http 1.1 आरएफसी में इसके बारे में कुछ भी नहीं ढूंढ पा रहा हूं। कोई विचार? दूसरे और तीसरे के लिए

उत्तर

7

यह उपयोग करने के लिए मान्य नहीं है? फिर। ? पैरामीटर सूची की शुरुआत इंगित करना चाहिए। & पैरामीटर अलग करना चाहिए।

RFC 3986 से

:

URI = scheme ":" hier-part [ "?" query ] [ "#" fragment ] 

RFC 1738 से:

एक HTTP URL रूप ले लेता है:

http:// <host> : <port>/<path> ? <searchpart> 

जहां <host> औरधारा 3.1 में वर्णित। यदि :<port> छोड़ा गया है, तो पोर्ट 80 पर डिफ़ॉल्ट है। कोई उपयोगकर्ता नाम या पासवर्ड अनुमत है। <path> एक HTTP चयनकर्ता है, और <searchpart> एक प्रश्न स्ट्रिंग है। <path> वैकल्पिक है, जैसा कि <searchpart> है और इसके "?" से पहले है। यदि न तो <path> और न ही <searchpart> मौजूद है, तो "/" भी छोड़ा जा सकता है।

<path> और <searchpart> घटकों के भीतर, "/", ";", "?" आरक्षित हैं। पदानुक्रमित संरचना को नामित करने के लिए "/" वर्ण HTTP के भीतर उपयोग किया जा सकता है।

search part/query part is described here

1

आवेदन/x-www फार्म-urlencoded

यह डिफ़ॉल्ट सामग्री प्रकार है। इस सामग्री प्रकार के साथ सबमिट किए गए फॉर्म को निम्नानुसार एन्कोड किया जाना चाहिए:

  1. नियंत्रण नाम और मान बच निकले हैं। स्पेस कैरेक्टर को + द्वारा प्रतिस्थापित किया गया है, और फिर आरक्षित वर्णों को आरएफसी 1738] में वर्णित किया गया है, खंड 2.2: गैर-अल्फान्यूमेरिक वर्णों को %HH द्वारा प्रतिस्थापित किया गया है, एक प्रतिशत चिह्न और दो हेक्साडेसिमल अंक चरित्र के ASCII कोड का प्रतिनिधित्व करते हैं। लाइन ब्रेक को "सीआर एलएफ" जोड़े के रूप में दर्शाया जाता है (यानी, %0D%0A)।
  2. नियंत्रण नाम/मान दस्तावेज़ में दिखाई देने वाले क्रम में सूचीबद्ध हैं। नाम = द्वारा मान से अलग किया गया है और नाम/मूल्य जोड़े & द्वारा एक-दूसरे से अलग किए गए हैं।

- application/x-www-form-urlencoded

0

जैसा कि बताया जा, तो फिर से उपयोग करने के लिए मान्य नहीं है। हालांकि, अगर आपके पास है? पैरामीटर मान के हिस्से के रूप में वर्ण, आप इसे% 63 के रूप में एन्कोड कर सकते हैं (बस स्पेस कैरेक्टर की तरह जो% 20 के रूप में एन्कोड किया जाता है)।

संबंधित मुद्दे