URL एन्कोडर / डिकोडर
अपने ब्राउज़र में तुरंत URL और URI घटकों को एन्कोड और डिकोड करें। मुफ़्त, निजी और कोई अपलोड की आवश्यकता नहीं।
अपने ब्राउज़र में तुरंत URL और URI घटकों को एन्कोड और डिकोड करें। मुफ़्त, निजी और कोई अपलोड की आवश्यकता नहीं।
यूआरएल एन्कोडिंग (औपचारिक रूप से प्रतिशत-एन्कोडिंग, आरएफसी 3986 में परिभाषित) उन वर्णों का अनुवाद करता है जिनके यूआरएल में विशेष अर्थ हैं - रिक्त स्थान, स्लैश, एम्परसेंड, हैश अंक - हेक्स अंकों के बाद प्रतिशत संकेतों का उपयोग करके एक सुरक्षित रूप में। स्पेस कैरेक्टर %20 (या + फॉर्म-एन्कोडेड संदर्भों में) बन जाता है, एम्परसेंड %26 बन जाता है, और इसी तरह। इस एन्कोडिंग के बिना, विशेष वर्णों की व्याख्या शाब्दिक डेटा के बजाय यूआरएल सिंटैक्स के रूप में की जाएगी, जो यूआरएल को तोड़ देगा या अनपेक्षित व्यवहार का कारण बनेगा।
दो संबंधित लेकिन अलग एन्कोडिंग मौजूद हैं। मानक यूआरएल घटक एन्कोडिंग अनारक्षित वर्ण सेट के बाहर हर चीज के लिए %-एस्केप का उपयोग करता है: ए-जेड, ए-जेड, 0-9, हाइफ़न, अंडरस्कोर, अवधि, टिल्ड। फॉर्म-एनकोडेड वैरिएंट (एप्लिकेशन/x-www-form-urlencoded) अतिरिक्त रूप से रिक्त स्थान को प्लस चिह्न के रूप में मानता है और कुछ अन्य वर्णों के लिए अलग-अलग नियमों का उपयोग करता है। JavaScript का encodeURIComponent सख्त घटक एन्कोडिंग का उपयोग करता है; एनकोडयूआरआई एक अधिक अनुमेय फॉर्म का उपयोग करता है जो यूआरएल संरचना वर्णों को संरक्षित करता है।
यह टूल एन्कोडिंग और डिकोडिंग दोनों प्रदान करता है। एन्कोड मोड प्रत्येक वर्ण को लपेटता है जिसे %HH प्रारूप में भागने की आवश्यकता होती है; डिकोड मोड परिवर्तन को उलट देता है। दोनों पूरी तरह से आपके ब्राउज़र में अंतर्निहित जावास्क्रिप्ट यूआरएल फ़ंक्शन का उपयोग करके चलते हैं, इसलिए कोई डेटा कहीं भी नहीं भेजा जाता है।
किसी भी समय डेटा को यूआरएल में शामिल किया जाता है - क्वेरी स्ट्रिंग पैरामीटर, उपयोगकर्ता इनपुट वाले पथ खंड, रीडायरेक्ट लक्ष्य - उचित एन्कोडिंग की आवश्यकता होती है। एनकोड करने में विफल रहने से ऐसे यूआरएल उत्पन्न होते हैं जो विशेष वर्ण दिखाई देने पर टूट जाते हैं, पैरामीटर सीमाओं को क्वेरी स्ट्रिंग्स में लीक कर देते हैं (&x=1 को एक अलग पैरामीटर में बदल देते हैं), या वेब सर्वर द्वारा विकृत अनुरोधों के रूप में अवरुद्ध हो जाते हैं।
डिकोडिंग इसका उलटा है: एन्कोडेड यूआरएल से मूल डेटा निकालना। ब्राउज़र एड्रेस बार अक्सर एन्कोडेड रूप में यूआरएल दिखाते हैं; डिकोडिंग से पता चलता है कि वास्तव में क्या इरादा था। लॉगिंग, डिबगिंग और सुरक्षा विश्लेषण सभी डिकोडेड यूआरएल से लाभान्वित होते हैं जो मूल पैरामीटर और पथ दिखाते हैं।
एक स्ट्रिंग चिपकाएँ, दिशा चुनें.
encodeURIComponent अनारक्षित सेट [A-Za-z0-9-_.~] के बाहर प्रत्येक वर्ण को एन्कोड करता है। रिक्त स्थान %20 बन जाते हैं, प्लस चिह्न %2बी बन जाते हैं, समान चिह्न %3डी बन जाते हैं, इत्यादि। ASCII के बाहर के वर्णों को पहले UTF-8 में एन्कोड किया जाता है और फिर प्रत्येक बाइट को %-एस्केप किया जाता है।
एन्कोडयूआरआई अधिक अनुमेय है और घटकों के बजाय पूर्ण यूआरएल के लिए अभिप्रेत है। यह /, ?, &, =, #, और कुछ अन्य से बच नहीं पाता क्योंकि उन वर्णों का URL-वाक्यविन्यास अर्थ होता है। किसी URL में उपयोगकर्ता डेटा एम्बेड करने के लिए, encodeURIComponent लगभग हमेशा सही विकल्प होता है।
decodeURIComponent %-escapes को उलट देता है, यह पुष्टि करते हुए कि प्रत्येक एस्केप अच्छी तरह से बना है और परिणामी बाइट्स वैध UTF-8 बनाते हैं। विकृत इनपुट कचरा उत्पन्न करने के बजाय त्रुटि उत्पन्न करता है।