+चिन्ह का अर्थ स्ट्रिंग स्ट्रिंग में एक अर्थ है। इसका उपयोग किसी स्पेस को दर्शाने के लिए किया जाता है। एक और चरित्र जिसका क्वेरी स्ट्रिंग में सिमेंटिक महत्व है जो क्वेरी स्ट्रिंग &में विभिन्न var=valueजोड़े को अलग करने के लिए उपयोग किया जाता है ।
अधिकांश सर्वर साइड स्क्रिप्ट क्वेरी मापदंडों का उपयोग करने से पहले उन्हें डीकोड कर देते हैं, ताकि +एक स्पेस में ठीक से परिवर्तित हो जाए। अब, यदि आप +क्वेरी स्ट्रिंग में शाब्दिक रूप से उपस्थित होना चाहते हैं, तो आपको %2Bइसके बजाय निर्दिष्ट करने की आवश्यकता है ।
+क्वेरी स्ट्रिंग में साइन एक स्थान के लिए URL-डिकोड किया गया है। %2Bक्वेरी स्ट्रिंग में URL + डीकोड करने के लिए + चिह्न है।
के बीच का अंतर देखें
http://www.google.com/search?q=foo+bar
तथा
http://www.google.com/search?q=foo%2Bbar
उपरोक्त उदाहरणों में, Google की सर्वर स्क्रिप्ट क्वेरी पैरामीटरों को URL-डिकोड करने और फिर खोज करने के लिए उनका उपयोग कर रही है।
URL-एन्कोडिंग और कुछ नहीं है, लेकिन %विशेष वर्ण के हेक्स-कोड के बाद हस्ताक्षर है। उदाहरण के लिए, हम जानते हैं कि हेक्स कोड A0x41 (दशमलव: 65) है। इसे इस्तेमाल करे:
http://www.google.com/search?q=%41
आशा है कि यह URL- एन्कोडिंग को स्पष्ट करता है।
इसलिए, यदि आप चाहते हैं कि +साइन को तब संरक्षित किया जाए जब कोई जावास्क्रिप्ट +अपने क्वेरी मापदंडों में संकेतों के साथ एक URL प्राप्त कर रहा है और एक सर्वर साइड स्क्रिप्ट URL-डीकोडिंग के बाद क्वेरी पैरामीटर को संसाधित करेगा, तो आपको URL में क्वेरी पैरामीटर को URL-इनकोड करना चाहिए HTTP जारी करने का उपयोग करने से पहले अनुरोध प्राप्त करें ताकि सभी +संकेत %2Bसर्वर साइड स्क्रिप्ट तक पहुंचने पर परिवर्तित हो जाएं । अब जब सर्वर साइड स्क्रिप्ट URL स्ट्रिंग स्ट्रिंग को डिकोड करता है, तो सभी %2Bवापस +संकेतों में परिवर्तित हो जाते हैं , जो आप चाहते हैं।
जावास्क्रिप्ट में एनकोड URL देखें ? यह जानने के लिए कि जावास्क्रिप्ट का उपयोग करके मापदंडों को URL-एनकोड कैसे करें। वहाँ चर्चा से छोटा जवाब:
var encodedURL = "http://example.com/foo.php?var=" + encodeURIComponent(param);