onlinetools.dev

URL एनकोड / डिकोड

URL घटकों और क्वेरी स्ट्रिंग को परसेंट-एनकोड या डिकोड कीजिए

स्थानीय रूप से चलता है
loading…
इस टूल के बारे में

स्पेस, ऐम्परसैंड और ग़ैर-ASCII अक्षर जैसे वर्ण URL में जस के तस नहीं आ सकते, इसलिए उन्हें प्रतिशत-एनकोड किया जाता है: स्पेस %20 बनता है, 你 बनता है %E4%BD%A0। यह टूल पाठ को URL में सुरक्षित रूप से डालने के लिए एनकोड करता है और प्रतिशत-एस्केप की गई स्ट्रिंग को वापस पठनीय पाठ में बदलता है, जिसमें क्वेरी स्ट्रिंग में स्पेस के लिए + वाली परिपाटी भी शामिल है।

एनकोडिंग के दो मोड इसलिए हैं क्योंकि JavaScript में भी दो हैं: कंपोनेंट मोड (encodeURIComponent) उन सब वर्णों को एस्केप करता है जो URL को बाँट सकते हैं — क्वेरी स्ट्रिंग के किसी एक मान के लिए यही चाहिए; पूर्ण-URI मोड (encodeURI) /, ? और & जैसे संरचनात्मक वर्ण बचाए रखता है, जब आप कोई पूरा URL एनकोड कर रहे हों जिस पर आगे जाना भी हो।

डिकोडिंग ख़राब % अनुक्रमों को लेकर सख़्त है — अकेला % या %ZZ चुपचाप निकल जाने के बजाय त्रुटि के रूप में बताया जाता है, ठीक वैसे ही जैसे ब्राउज़र और सर्वर उसे लेंगे।

अक्सर पूछे जाने वाले प्रश्न

कंपोनेंट मोड कब और पूर्ण-URI मोड कब?
यदि आप कोई ऐसा मान एनकोड कर रहे हैं जो URL के भीतर जाएगा (कोई खोज-प्रश्न, कोई रीडायरेक्ट गंतव्य, किसी पैरामीटर में ईमेल) → कंपोनेंट मोड, ताकि मान के भीतर के & और = क्वेरी स्ट्रिंग न तोड़ें। यदि दिखाने या भेजने के लिए पूरा URL एनकोड कर रहे हैं → पूर्ण-URI मोड, ताकि URL की संरचना बची रहे।
+ कभी-कभी स्पेस का अर्थ क्यों रखता है?
application/x-www-form-urlencoded प्रारूप — जिसे HTML फ़ॉर्म और क्वेरी स्ट्रिंग इस्तेमाल करते हैं — ऐतिहासिक रूप से स्पेस को + के रूप में एनकोड करता है। URL पथों में + बस एक जोड़ चिह्न है। यहाँ का डिकोडर + को स्पेस मानता है, जो क्वेरी-स्ट्रिंग के अर्थ से मेल खाता है; %20 हर जगह हमेशा चलता है।
मेरी स्ट्रिंग दो बार एनकोड (%2520) क्यों है?
%25 स्वयं % की एनकोडिंग है, इसलिए %2520 का अर्थ है कि पाठ %20 को दूसरी बार एनकोड किया गया। ऐसा तब होता है जब किसी तंत्र की दो परतें अलग-अलग एनकोड करती हैं। यहाँ दो बार डिकोड करके इसे खोलिए, फिर उस परत को ठीक कीजिए जिसे एनकोड नहीं करना चाहिए।
क्या यूनिकोड वर्ण सही ढंग से सँभाले जाते हैं?
हाँ — पाठ पहले UTF-8 में एनकोड होता है और फिर WHATWG URL मानक के अनुसार हर बाइट प्रतिशत-एस्केप होती है। इसीलिए एक CJK वर्ण तीन %XX समूह बन जाता है।
संबंधित टूल