¿Qué es la codificación URL?
Las URL solo pueden contener un conjunto limitado de caracteres. Los caracteres no ASCII (como la ñ o las tildes), los espacios y los caracteres con un significado especial en las URL, como &, = y ?, deben codificarse antes de ir en un parámetro. La codificación URL (codificación por porcentaje) convierte cada carácter en bytes UTF-8 y los escribe como % seguido de dos dígitos hexadecimales; el carácter chino 中, por ejemplo, se convierte en %E4%B8%AD.
Cómo se usa
- Pulsa «Codificar» o «Decodificar» para elegir la dirección; el botón elegido queda resaltado.
- Escribe en el cuadro de entrada. Con «Conversión automática» activada, el resultado aparece en cuanto dejas de escribir.
- «Usar el resultado como entrada» pasa el resultado a la izquierda e invierte la dirección.
¿Los espacios deben ser %20 o +?
- %20 (predeterminado): sigue el estándar de URL RFC 3986 y funciona en cualquier parte de una URL.
- +: el formato que se usa al enviar formularios HTML (
application/x-www-form-urlencoded). Activa «Espacio como +»; al decodificar,+se trata entonces como un espacio.
Ejemplo
a b&c=中文 se codifica como:
a%20b%26c%3D%E4%B8%AD%E6%96%87
¿En qué se diferencia de encodeURIComponent de JavaScript?
Los resultados son casi iguales. Siguiendo RFC 3986, esta herramienta también codifica los cinco caracteres !, ', (, ) y *, y solo deja letras, dígitos, -, _, . y ~. Así es menos probable que cause problemas en distintos servidores.
Alcance de la codificación y análisis de URL
- Valor de parámetro (predeterminado): se codifican todos los caracteres especiales, lo adecuado para un valor después de
?q=. - URL completa: mantiene la estructura de la URL (
: / ? & = #) y solo codifica lo que una URL no admite, como caracteres no ASCII, espacios y símbolos como[ ] |. Por ejemplo,https://example.com/咖啡?q=拿 鐵pasa a serhttps://example.com/%E5%92%96%E5%95%A1?q=%E6%8B%BF%20%E9%90%B5. - Analizar URL: «Analizar URL» divide una URL en protocolo, host, puerto, ruta y fragmento, y muestra cada parámetro de la consulta decodificado en una tabla, incluidos los repetidos. Un
+en la consulta se lee como espacio, igual que hacen los servidores.
Preguntas frecuentes
¿Puedo codificar una URL entera?
Con el alcance predeterminado «Valor de parámetro», una URL entera se rompe porque también se codifican ://, ? y &. Para una URL completa, cambia «Alcance de la codificación» a «URL completa», que mantiene la estructura y solo codifica lo que una URL no admite; usa «Valor de parámetro» para un valor suelto.
Al decodificar dice «Cadena con codificación URL no válida»
Cada % debe ir seguido de dos dígitos hexadecimales (0–9, A–F). Si el texto simplemente contiene un signo de porcentaje (como 100%), nunca se codificó y no hace falta decodificarlo.
¿Qué significa %2520?
El texto se codificó dos veces: el propio % se volvió a codificar como %25. Decodifica una vez más para obtener el original.