Codificador / Decodificador de URL
Codifica y decodifica URLs y parámetros con percent-encoding. Ámbito de componente o URL completa, todo en tu navegador.
¿Qué es la codificación de URL?
La codificación de URL (también llamada percent-encoding) es la forma de representar caracteres que no son seguros en una URL — espacios, letras con tilde, &, ?, #, etc. — sustituyéndolos por % seguido del valor hexadecimal del byte. El estándar está definido en la RFC 3986. Para caracteres no ASCII, los bytes vienen de UTF-8, así que é queda como %C3%A9 (dos bytes). Esta herramienta envuelve las funciones nativas encodeURIComponent y decodeURIComponent del navegador.
Cómo usarla
Elige Codificar o Decodificar en el modo y luego el ámbito. Componente es el ajuste correcto para valores de query string, campos de formulario y cualquier cosa que vaya a quedar como ?clave=…. URL completa sirve para URLs ya más o menos válidas que solo quieres escapar lo justo — conserva : / ? & = # para que esos caracteres mantengan su sentido estructural. Pega el texto y el resultado se actualiza en vivo. Usa Pasar a entrada para llevar la salida de vuelta a la entrada e invertir el modo en un ida y vuelta rápido.
Componente o URL completa — ¿cuál elegir?
Si codificas un único valor (un término de búsqueda, una URL de redirección, un email) para pegarlo dentro de una query string, usa Componente. Si codificas una URL completa ya casi válida y solo quieres escapar lo inseguro, usa URL completa. Las dos se comportan muy distinto con ? y & — Componente las codifica, URL completa no. Ante la duda, codifica los valores dentro de la URL con Componente y monta tú la URL.
Percent-encodings comunes
| Carácter | Codificado | Notas |
|---|---|---|
| space | %20 | Los espacios pasan a %20 en URLs (o + en cuerpos form-encoded). |
| & | %26 | Separa parámetros de la query string; debe codificarse dentro de un valor. |
| = | %3D | Separa el nombre y el valor de un parámetro. |
| ? | %3F | Marca el inicio de la query string. |
| # | %23 | Marca el inicio del fragmento (ancla) de la URL. |
| / | %2F | Separador de ruta; solo se codifica dentro de segmentos. |
| é | %C3%A9 | Los caracteres no ASCII se codifican en UTF-8 y luego se percent-escapan byte a byte. |
Preguntas frecuentes
¿Se envía algo a un servidor?
encodeURIComponent y decodeURIComponent. No se registra ni se transmite nada. Puedes comprobarlo abriendo DevTools > Network — no se dispara ninguna petición mientras escribes.¿Por qué a veces + significa espacio?
application/x-www-form-urlencoded, que se usa al enviar formularios HTML. Allí los espacios pasan a + en lugar de %20. El percent-encoding de la RFC 3986 (que usa esta herramienta) siempre usa %20. Si decodificas el cuerpo de un envío de formulario y ves + donde deberían ir espacios, sustitúyelos antes de decodificar o usa un decodificador específico de form-encoded.¿Por qué falla la decodificación?
decodeURIComponent lanza URIError si la entrada tiene un % sin dos dígitos hexadecimales válidos a continuación, o si los bytes no son UTF-8 válido. Los sospechosos habituales son cadenas doblemente codificadas (decodifica dos veces) o URLs pegadas que el autocorrector del editor ha estropeado.¿Cuál es la diferencia entre encodeURI y encodeURIComponent?
encodeURI está pensada para URLs enteras — deja intactos : / ? & = # @ y +, porque esos caracteres tienen sentido estructural en una URL. encodeURIComponent es para trozos de URL (un valor de query, un segmento de ruta) y codifica todo lo que no es no reservado. Regla práctica: monta URLs concatenando partes pasadas por encodeURIComponent; nunca confíes en encodeURI con entrada de usuario.¿Puedo codificar emoji?
%F0%9F%8E%89) porque es un codepoint de 4 bytes fuera del plano básico. La decodificación invierte el proceso — recuperas el emoji original.¿Debo codificar la URL más de una vez?
? y & de la URL interna se interpretan como parte de la externa. Para decodificarlo, ejecuta decode el mismo número de veces. Si codificaste una URL dos veces sin querer, decodifícala dos veces y recuperas el original.
EN
PT
ES