Convertidor Gratuito

Codificador de URL / Decodificador

Codifica y decodifica URLs y componentes URI al instante en tu navegador. Gratis, privado y sin necesidad de subir archivos.

O

Acerca de esta herramienta

La codificación de URL (formalmente codificación porcentual, definida en RFC 3986) traduce los caracteres que tienen un significado especial en las URL (espacios, barras diagonales, signos y almohadillas) a una forma segura utilizando signos de porcentaje seguidos de dígitos hexadecimales. El carácter de espacio se convierte en %20 (o + en contextos codificados en formato), el signo comercial se convierte en %26, y así sucesivamente. Sin esta codificación, los caracteres especiales se interpretarían como sintaxis de URL en lugar de datos literales, lo que rompería la URL o provocaría un comportamiento no deseado.

Existen dos codificaciones relacionadas pero distintas. La codificación estándar del componente URL utiliza %-escapes para todo lo que está fuera del conjunto de caracteres no reservados: A-Z, a-z, 0-9, guión, guión bajo, punto, tilde. La variante codificada en formulario (application/x-www-form-urlencoded) además trata los espacios como signos más y utiliza reglas diferentes para algunos otros caracteres. EncodeURIComponent de JavaScript utiliza la codificación estricta de componentes; encodeURI utiliza una forma más permisiva que conserva los caracteres de la estructura de la URL.

Esta herramienta ofrece codificación y decodificación. El modo de codificación envuelve cada carácter que requiere escape en formato %HH; El modo de decodificación invierte la transformación. Ambos se ejecutan completamente en su navegador utilizando funciones de URL de JavaScript integradas, por lo que no se envían datos a ninguna parte.

Por qué codificar o decodificar URL

Cada vez que se incluyen datos en una URL (parámetros de cadena de consulta, segmentos de ruta que contienen entradas del usuario, objetivos de redireccionamiento), se requiere una codificación adecuada. No codificar produce URL que se rompen cuando aparecen caracteres especiales, filtran los límites de los parámetros para cadenas de consulta (convirtiendo &x=1 en un parámetro separado) o son bloqueados por servidores web como solicitudes con formato incorrecto.

La decodificación es lo inverso: extraer los datos originales de una URL codificada. Las barras de direcciones del navegador suelen mostrar las URL en forma codificada; la decodificación revela lo que realmente se pretendía. El registro, la depuración y el análisis de seguridad se benefician de las URL decodificadas que muestran los parámetros y rutas originales.

Cómo usarla

Pega una cuerda, elige la dirección.

  1. Elija codificar o decodificar: Codificar envuelve caracteres no seguros en formato %HH. La decodificación invierte los escapes de %HH a caracteres literales.
  2. Agregar texto de entrada: Pegue la cadena para codificar o decodificar. Para la codificación, suele ser un valor literal con espacios, caracteres especiales o contenido que no es ASCII. Para decodificar, se trata de una URL o un componente de URL que contiene escapes %HH.
  3. Convertir: La herramienta aplica encodeURIComponent o decodeURIComponent. La salida codificada es segura para incrustar en una URL; la salida decodificada es el valor literal original.
  4. Copiar o descargar: Utilice el resultado donde lo necesite. Los valores codificados encajan en las URL; Los valores decodificados revelan los datos originales.

Casos de uso comunes

Detalles técnicos

encodeURIComponent codifica cada carácter fuera del conjunto no reservado [A-Za-z0-9-_.~]. Los espacios se convierten en %20, los signos más se convierten en %2B, los signos iguales se convierten en %3D, y así sucesivamente. Los caracteres fuera de ASCII primero se codifican en UTF-8 y luego cada byte tiene un % de escape.

encodeURI es más permisivo y está destinado a URL completas en lugar de componentes. No escapa /, ?, &, =, # y algunos otros porque esos caracteres tienen significado de sintaxis URL. Para incrustar datos de usuario en una URL, encodeURIComponent es casi siempre la opción correcta.

decodeURIComponent invierte %-escapes, validando que cada escape esté bien formado y que los bytes resultantes formen UTF-8 válido. La entrada con formato incorrecto arroja un error en lugar de generar basura.

Mejores prácticas

Preguntas frecuentes

¿Qué caracteres necesitan codificación URL?
Los caracteres reservados (&, =, ?, #, /, :, @) y los caracteres no seguros (espacios, <, >, {, }, |, ^, ~, [, ], `) deben estar codificados. Los caracteres alfanuméricos y -_.~ son seguros y no necesitan codificación.
¿Cuál es la diferencia entre encodeURI y encodeURIComponent?
encodeURI codifica una URL completa pero conserva los caracteres reservados (://?#). encodeURIComponent codifica todo excepto -_.!~*'(); úselo para consultar valores de parámetros. Esta herramienta ofrece ambos modos.
¿Cómo se codifican los espacios en las URL?
Los espacios se pueden codificar como %20 (codificación porcentual estándar) o + (codificación de formulario). %20 es correcto para rutas URL, mientras que + se usa en cadenas de consulta de formularios HTML. Esta herramienta utiliza %20 de forma predeterminada.
¿Puedo codificar caracteres Unicode?
Sí. Los caracteres Unicode primero se codifican en bytes UTF-8 y luego cada byte se codifica en porcentaje. Por ejemplo, '日' se convierte en %E6%97%A5 (tres bytes UTF-8, cada uno codificado en porcentaje).
¿Debo usar encodeURI o encodeURIComponent?
Casi siempre codificaURIComponent. Utilice encodeURI solo si tiene una URL completa y desea preservar su estructura, lo que suele ser poco común ya que de todos modos crea URL a partir de componentes.
¿Mis datos se suben a un servidor?
No. La codificación y decodificación de URL se realiza completamente en su navegador.
¿Maneja emoji Unicode?
Sí. Los emoji son secuencias UTF-8 de varios bytes; el codificador produce una cadena de bytes con % de escape que los decodificadores vuelven a ensamblar correctamente al emoji original.
¿Qué pasa si mi entrada tiene cadenas que parecen %HH y que en realidad no están codificadas?
La codificación convierte cada % en %25 y luego vuelve a aplicar el escape para el resto. La decodificación de entradas estrictas arroja errores en escapes con formato incorrecto; Las cadenas de aspecto ambiguo pueden descodificarse incorrectamente.