0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0
कॉन्फ़िगरेशन
URLs में सुरक्षित उपयोग के लिए पाठ स्ट्रिंग्स को एन्कोड और डिकोड करें। Component सभी आरक्षित वर्णों को एन्कोड करता है — query parameter मानों के लिए आदर्श। पूर्ण URL URL की संरचना (scheme, slashes, question marks) को संरक्षित करता है। HTML forms (application/x-www-form-urlencoded) में रिक्त स्थानों के लिए + का उपयोग करें।
ऑपरेशन
दायरा
रिक्त स्थान
0

यह कैसे काम करता है

URL एन्कोडिंग (परसेंट-एन्कोडिंग) उन वर्णों को, जो किसी पते में शाब्दिक रूप से नहीं आ सकते, उनके बाइट मान वाले %XX अनुक्रमों से बदल देती है। उदाहरण के लिए, स्पेस %20 बन जाता है।

"कॉम्पोनेंट" स्कोप आरक्षित वर्णों (= & / ? #) को भी एस्केप करता है: इसे किसी पैरामीटर के मान के लिए उपयोग करें। "पूर्ण URL" पते की संरचना बनाए रखता है: इसे पूरे URL के लिए उपयोग करें।

HTML फ़ॉर्म में स्पेस को + के रूप में एन्कोड किया जाता है (application/x-www-form-urlencoded); बाकी सभी मामलों में RFC 3986 मानक के अनुसार %20 उपयोग होता है।

उदाहरण

hola mundo & máshola%20mundo%20%26%20m%C3%A1s"&" को एस्केप किया जाता है (%26) ताकि यह पैरामीटर विभाजक से न भ्रमित हो; "á" को UTF-8 में एन्कोड किया जाता है (%C3%A1)।
a=1&b=2a%3D1%26b%3D2
https://sitio.com/á b?x=1 2URL completa: https://sitio.com/%C3%A1%20b?x=1%202"पूर्ण URL" मोड में ://, / और ? संरक्षित रहते हैं; केवल वही एस्केप होता है जो पते को तोड़ देगा।

उपयोग के मामले

  • किसी URL को हाथ से बनाते समय क्वेरी पैरामीटर को सुरक्षित रूप से तैयार करना।
  • किसी GET अनुरोध में भेजने से पहले उन मानों को एन्कोड करना जिनमें &, =, स्पेस या उच्चारण चिह्न हों।
  • किसी URL को डिकोड करना ताकि पढ़ा जा सके कि प्रत्येक पैरामीटर कौन-से मान रखता है।
  • फ़ॉर्म सबमिशन के लिए application/x-www-form-urlencoded बॉडी तैयार करना।

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

"कॉम्पोनेंट" और "पूर्ण URL" में क्या अंतर है?

"कॉम्पोनेंट" (encodeURIComponent) =, &, /, ?, # को भी एस्केप करता है — यह किसी एकल मान के लिए है। "पूर्ण URL" (encodeURI) इन संरचनात्मक वर्णों को बनाए रखता है — यह पूरे URL के लिए है।

स्पेस के लिए + कब और %20 कब उपयोग होता है?

+ केवल फ़ॉर्म के बॉडी (application/x-www-form-urlencoded) पर लागू होता है। URL के बाकी हिस्से में स्पेस के लिए मानक %20 है।

"á" %C3%A1 में क्यों बदलता है, एकल %XX में क्यों नहीं?

क्योंकि यह UTF-8 में एन्कोड होता है: गैर-ASCII वर्ण कई बाइट लेते हैं, और प्रत्येक बाइट को उसके अपने %XX अनुक्रम से दर्शाया जाता है।

किसी URL को एन्कोड करने से वह सुरक्षित हो जाता है?

नहीं। यह केवल इसे सिंटैक्स स्तर पर मान्य बनाता है। यह एन्क्रिप्शन नहीं है और सामग्री की किसी भी तरह से रक्षा नहीं करता।