§

Ingrese el texto a decodificar:

Ingrese el texto codificado en URL que desea decodificar. La herramienta convertirá los caracteres codificados en porcentaje a su forma original.
§

Output

decoded

Decodificar URLs es una tarea diaria en operaciones: revisar el `Referer` con parámetros UTM en los informes de campañas del INE, depurar callbacks de Cl@ve donde el `RelayState` viaja percent-encoded, leer entradas de log de NGINX en servidores alojados por Acens o Arsys, o inspeccionar las cadenas de consulta que el portal de la DGT añade al consultar puntos del carnet. También aparece al triar peticiones que pasan por el WAF de la Plataforma de Intermediación de Datos (PID), al revisar capturas del proxy CISCO de la AGE y al analizar registros de auditoría exigidos por el ENS de categoría alta. Esta herramienta funciona offline en el navegador y respeta la privacidad por defecto.

Opciones avanzadas

Convertir + en espacios

Cuando está habilitado, los caracteres + se convertirán en espacios. Esto es útil al decodificar parámetros de consulta.

Modo en vivo

Cuando está habilitado, el texto se decodificará automáticamente mientras escribe.

Estas opciones le ayudan a controlar cómo se decodifican los caracteres codificados en sus URLs.

¿Qué es la decodificación URL?

La decodificación de URL invierte la codificación porcentual: lee las secuencias de escape %XX en una URL codificada y las devuelve a los caracteres que representan. Así se recupera una cadena de consulta legible, un valor de formulario o un segmento de ruta desde una URL que un navegador, una API o un log te entrega codificada.

¿Cómo funciona la decodificación URL?

La decodificación de URL sigue un proceso específico para convertir las secuencias codificadas como porcentaje de nuevo en sus caracteres originales:

  1. Se analiza la cadena de entrada en busca de secuencias de escape codificadas con porcentaje (%XX)
  2. Cada %XX se convierte de sus dos dígitos hexadecimales de vuelta al valor de byte original
  3. Los bytes decodificados consecutivos se reensamblan en caracteres UTF-8 (una secuencia de varios bytes se convierte en un solo carácter)
  4. En el contexto de una cadena de consulta, + se decodifica como un espacio (application/x-www-form-urlencoded), mientras que %2B permanece como un + literal
  5. Los caracteres no reservados y el texto ya decodificado pasan sin cambios

¿Por qué usar un decodificador URL?

  • Salida legible: convierte %20, %40 y %3D de nuevo en espacios, @ y = para que puedas leer lo que dice realmente una URL
  • Texto internacional: reconstruye caracteres acentuados y no ASCII desde sus secuencias de bytes UTF-8, de modo que %C3%A9 vuelva a leerse como é
  • Depuración: inspecciona los valores reales dentro de una cadena de consulta, una redirección OAuth o un payload de webhook antes de actuar sobre ellos
  • Correcto según estándares: decodifica conforme a RFC 3986, las mismas reglas que usan navegadores y servidores, para ver exactamente lo que ellos ven

¿Cuáles son las aplicaciones comunes de la decodificación URL?

La decodificación de URL es esencial en muchos escenarios de desarrollo web:

  • Envío de formularios: leer los valores originales de los campos desde datos GET y POST codificados con application/x-www-form-urlencoded
  • Desarrollo de API: desempaquetar parámetros de ruta y consulta codificados en porcentaje que llegan a un endpoint de API
  • Sistemas de archivos: recuperar rutas y nombres de archivo que fueron codificados en porcentaje para viajar dentro de una URL
  • Depuración de enlaces: decodificar URLs compartidas o registradas para ver los caracteres especiales y el texto internacional que contienen

¿Cómo es un ejemplo de decodificación URL?

Aquí hay algunos ejemplos comunes de decodificación de URL: %20 (o +) se convierte en un espacio, %40 se convierte en @, %23 se convierte en #, %26 se convierte en &, y %3D se convierte en =. Una secuencia UTF-8 como %C3%A9 se convierte en el carácter internacional é.

¿Qué es la codificación porcentual?

La codificación porcentual es el mecanismo definido por el RFC 3986 §2.1 para representar caracteres no seguros o reservados dentro de una URI. La regla es mecánica: cada byte que no pueda aparecer de forma literal se escribe como un signo de porcentaje seguido de dos dígitos hexadecimales — la forma %XX —, donde XX es el valor del byte. Los caracteres no ASCII como é primero se codifican como su secuencia de bytes UTF-8 y luego cada byte se codifica porcentualmente por separado. Los desarrolladores se encuentran con esto casi a diario: en cadenas de consulta, envíos de formularios, URLs de retorno de OAuth, parámetros de ruta en APIs REST y en cualquier lugar donde una URL deba transportar puntuación, espacios o caracteres fuera del conjunto no reservado A–Z a–z 0–9 - _ . ~.

¿Cómo funciona realmente la decodificación de %C3%A9 a é?

Toma la cadena de consulta codificada ?q=caf%C3%A9&lang=fr. La decodificación produce ?q=café&lang=fr. Aquí está el recorrido byte por byte:

  • Entrada: ?q=caf%C3%A9&lang=fr
  • Salida: ?q=café&lang=fr
  1. %C3 → byte 0xC3 (binario 11000011) — el byte líder de una secuencia UTF-8 de 2 bytes.
  2. %A9 → byte 0xA9 (binario 10101001) — el byte de continuación. Juntos, C3 A9 es la codificación UTF-8 de U+00E9, que es é.
  3. Los caracteres ?, = y & se dejan intactos porque son estructurales — delimitan la consulta y sus pares clave/valor. El literal caf también pasa sin cambios, ya que las letras ASCII minúsculas pertenecen al conjunto no reservado.

¿Cuál es la diferencia entre decodeURIComponent y decodeURI?

JavaScript expone dos decodificadores integrados, y confundirlos es uno de los errores más comunes al manejar URLs:

  • decodeURIComponent(str) decodifica toda secuencia codificada porcentualmente, incluidos los caracteres reservados como &, =, ?, / y #. Úsalo en valores individuales de cadena de consulta o segmentos de ruta — nunca sobre una URL completa.
  • decodeURI(str) es deliberadamente conservador: omite los caracteres reservados. Si le pasas %26 devuelve la cadena literal %26, no &. Está pensado para URIs completas en las que quieres que la estructura sobreviva a un viaje de ida y vuelta.

Regla general: si la cadena es una pieza de una URL (un único parámetro, un fragmento, un nombre de archivo codificado), utiliza decodeURIComponent. Esta herramienta se comporta como decodeURIComponent — cada secuencia %XX de tu entrada se decodifica, incluidos los caracteres reservados.

Decodificar una URL es la forma de leer lo que contiene realmente. Pega una cadena codificada arriba y cada secuencia %XX se convierte de vuelta en su carácter directamente en tu navegador, para que puedas depurar un parámetro de consulta, revisar una redirección OAuth o recuperar un nombre de archivo acentuado sin enviar nada a un servidor.