वेब और एन्कोडिंग

URL में स्पेस एन्कोडिंग: %20 और + का अंतर

%20 प्रतिशत-एन्कोड किया स्पेस है। प्लस चिह्न केवल फ़ॉर्म-शैली क्वेरी सीरियलाइज़ेशन में स्पेस बनकर डिकोड होता है, हर URL हिस्से में सार्वभौमिक रूप से नहीं।

प्रकाशित

संक्षिप्त उत्तर: %20 और + हर जगह एक-दूसरे के विकल्प नहीं हैं

प्रतिशत एन्कोडिंग स्पेस बाइट के लिए %20 परिभाषित करती है। प्लस को स्पेस मानना फ़ॉर्म/क्वेरी सीरियलाइज़ेशन का नियम है।

URL पाथ में स्पेस

स्पेस के लिए %20 उपयोग करें। पाथ में वास्तविक + पार्सर और ऐप कॉन्ट्रैक्ट के अनुसार प्लस रह सकता है।

क्वेरी/फ़ॉर्म मानों में स्पेस

application/x-www-form-urlencoded सीरियलाइज़ेशन फ़ॉर्म-शैली मानों में स्पेस को + बदलता है और + वापस स्पेस डिकोड करता है।

वास्तविक प्लस चिह्न कैसे एन्कोड करें

फ़ॉर्म-शैली क्वेरी डिकोडिंग के बाद प्लस को + वर्ण बनाए रखना हो तो %2B उपयोग करें।

%20, + और %2B की तुलना

टेक्स्टआम डिकोड किया मानसंदर्भ
%20स्पेसपाथ या क्वेरी में प्रतिशत एन्कोडिंग
+स्पेसफ़ॉर्म-शैली क्वेरी मान
%2B+फ़ॉर्म-शैली क्वेरी मान में वास्तविक प्लस

डबल एन्कोडिंग: %20 → %2520

%20 के प्रतिशत चिह्न को एन्कोड करने से %2520 बनता है। एक डिकोड से %20 और दूसरी स्पष्ट डिकोडिंग से स्पेस मिलता है।

UTF-8 और प्रतिशत-एन्कोड बाइट

गैर-ASCII वर्ण आमतौर पर UTF-8 बाइट में बदलते हैं, फिर हर बाइट प्रतिशत-एन्कोड होता है। सही हिस्से की सीमा पर डिकोड करें।

आम गलतियाँ

  • केवल एक हिस्सा डिकोड करना हो तब पूरा URL डिकोड करना।
  • हर URL हिस्से में + को स्पेस मानना।
  • फ़ॉर्म डेटा में वास्तविक प्लस के लिए %2B भूलना।
  • सीरियलाइज़ेशन परतें जाने बिना बार-बार डिकोड करना।

URL Decoder में उदाहरण आज़माएँ

टूल कच्चे और डिकोड किए मान दिखाता है; गाइड पाथ और फ़ॉर्म-क्वेरी का संदर्भ देती है।

उदाहरण आज़माएँ

पाथ और क्वेरी मानों में %20 डिकोड करें

इस URL के दोनों हिस्सों में प्रतिशत-एन्कोड स्पेस हैं।

https://example.com/a%20b?q=hello%20world

अपेक्षित परिणाम: डिकोड किए रूप में स्पेस हैं, जबकि कच्चे घटक मान जाँचने के लिए उपलब्ध रहते हैं।

उदाहरण आज़माएँ

क्वेरी में + और %2B की तुलना करें

फ़ॉर्म-शैली पार्सिंग + को स्पेस और %2B को वास्तविक प्लस मानती है।

https://example.com/search?q=hello+world&tag=a%2Bb

अपेक्षित परिणाम: फ़ॉर्म-शैली नियमों से क्वेरी मान hello world और a+b दिखते हैं।

उदाहरण आज़माएँ

दो एन्कोडिंग परतें देखें

एन्कोड प्रतिशत चिह्न दूसरी %20 परत दिखाता है।

hello%2520world

अपेक्षित परिणाम: एक परत hello%20world है; दूसरी स्पष्ट परत hello world बनती है।

हर हिस्सा जाँचें

URL स्पेस के उदाहरण डिकोड करें

पाथ, क्वेरी और डबल एन्कोडिंग के व्यवहार की स्थानीय तुलना करें।

URL Decoder में खोलें →