Codificación porcentual de URL, codifique y decodifique, con soporte de caracteres no ASCII
La codificación URL (también llamada codificación porcentual) convierte los caracteres especiales de una URL en un % seguido de dos dígitos hexadecimales. Según RFC 3986, una URL solo puede contener un subconjunto de caracteres ASCII; todo lo demás (caracteres no ASCII, espacios, símbolos especiales) debe codificarse.
En JavaScript, encodeURIComponent() codifica los valores de los parámetros de consulta, codificando todos los caracteres excepto A-Z a-z 0-9 - _ . ! ~ * ' ( ). encodeURI() preserva los caracteres estructurales de la URL (como : / ? # & =).
Escenarios comunes incluyen la codificación de parámetros AJAX, el manejo de rutas con texto no ASCII en URL y la firma de parámetros OAuth.
Entrada: ¡Hola, Mundo! → Salida: %C2%A1Hola%2C%20Mundo!
Entrada: hello world! → Salida: hello%20world!