Base64URL वही बाइट दर्शाता है जो Base64, लेकिन दो अक्षर बदल देता है। Decodex दोनों प्रारूपों से UTF-8 टेक्स्ट डिकोड करता है। इनमें से कोई भी प्रारूप एन्क्रिप्शन नहीं है।
अक्षर और पैडिंग
Base64 में + और / होते हैं; Base64URL में - और _ होते हैं। बाकी अक्षर और अंक समान रहते हैं। = पैडिंग रखना या हटाना प्रोटोकॉल पर निर्भर है। केवल अक्षरों और अंकों वाली स्ट्रिंग से दोनों प्रारूपों में अंतर पहचानना संभव नहीं है।
URL पैरामीटर में सावधानी
application/x-www-form-urlencoded में + स्पेस बन सकता है। पैरामीटर बनाने के लिए URLSearchParams इस्तेमाल करें। यदि + पहले ही खो गया है, तो डिकोडर उसे निश्चित रूप से वापस नहीं ला सकता। 😀 का Base64 8J+YgA== और Base64URL 8J-YgA== है।
बदलें और जाँचें
बाइट एन्कोड करने के बाद + को - और / को _ से बदलें। आखिर के = केवल तब हटाएँ जब प्रोटोकॉल अनुमति दे। Decodex पैडिंग वाला सामान्य Base64 बनाता है और Base64URL भी डिकोड करता है। JWT का भाग पढ़ने से हस्ताक्षर, समाप्ति या अनुमति सत्यापित नहीं होती।
यह उदाहरण बदलें
| प्रारूप | टेक्स्ट | Base64 |
|---|---|---|
Base64 | 😀 | 8J+YgA== |
Base64URL | 😀 | 8J-YgA== |
Base64URL (JWT) | 😀 | 8J-YgA |
अक्सर पूछे जाने वाले प्रश्न
क्या Base64URL में हमेशा = नहीं होता?
नहीं। प्राप्त करने वाले सिस्टम का प्रारूप अपनाएँ। Decodex में बिना पैडिंग का 8J-YgA भी 😀 देता है।
