Codificador/decodificador de URL

Codifique y decodifique URLs

Aplique percent-encoding a componentes de consulta o a cadenas URL completas y vuelva a decodificarlas. Dos modos reflejan encodeURIComponent y encodeURI para alinearlos con su stack o documentación de API.

Use este modo para nombres y valores individuales de parámetros de consulta, segmentos de ruta o cualquier cadena que incrustará en una URL mayor. Codifica casi todos los caracteres reservados.

Herramientas relacionadas

¿Para qué sirve un codificador y decodificador de URL?

Los navegadores, servidores y cachés tratan ciertos caracteres como estructura: espacios, ampersands, almohadillas y texto no ASCII necesitan escape cuando son datos y no sintaxis. Una herramienta dedicada le muestra la cadena exacta que enviará un cliente HTTP.

Ventajas de una codificación URL correcta

  • Transmisión segura: El contenido reservado del usuario deja de romper analizadores que dividen rutas, consultas y fragmentos.
  • Soporte Unicode: Los bytes UTF‑8 pueden representarse como secuencias % para que el texto internacional sobreviva transportes solo ASCII.
  • APIs previsibles: Alinear con RFC 3986 reduce desajustes entre front-end, apps móviles y frameworks de backend.
  • Menos errores 400: Parámetros bien codificados tienen menos probabilidades de rechazo por gateways estrictos o proxies inversos.
  • Depuración más fácil: Compare su cadena manual con lo que produciría encodeURIComponent antes de publicar un hotfix.

Cómo funciona la codificación de URL

El percent-encoding reescribe cada byte que no puede aparecer literalmente en un segmento de URL como %HH, donde HH es hexadecimal. Qué caracteres permanecen literales depende de proteger una URL entera o un componente individual.

Modos de esta herramienta

  • Modo componente: Equivale a encodeURIComponent / decodeURIComponent: ideal para claves, valores, segmentos de ruta o texto que irá en una query.
  • Modo URL completa: Equivale a encodeURI / decodeURI: pensado para cadenas que aún contienen esquema, host, barras y signos de consulta tras la transformación.
  • Transformación en vivo: Cada edición pasa por el par elegido para ver al instante entradas mal formadas o errores de doble codificación.

Datos que conviene recordar

Detalles como el signo + en envíos de formularios frente al percent-encoding real suelen confundir equipos cuando los frameworks no coinciden.

Referencia rápida

  • El espacio suele ser %20 en la query; los formularios HTML pueden usar + en cuerpos application/x-www-form-urlencoded.
  • Solo caracteres no reservados (letras, dígitos, -._~) pueden quedar sin codificar en modo componente estricto.
  • La doble codificación (codificar una cadena ya codificada) alarga la URL y puede confundir servidores.
  • decodeURIComponent falla con % seguido de hex incompleto; corrija el origen antes de decodificar.
  • Los dominios internacionalizados usan Punycode en el DNS; la codificación URL cubre ruta y consulta, no la conversión ACE del nombre de host.

Buenas prácticas

Codifique en el límite donde el texto no confiable pasa a formar parte de una URL y decodifique una vez cuando lo trate de nuevo como datos.

  • Codifique cada valor de consulta por separado en lugar de codificar dos veces la URL entera.
  • Registre la entrada cruda por separado de la cadena codificada al depurar analíticas o redirecciones.
  • Prefiera enlaces HTTPS al compartir URLs codificados con tokens sensibles.
  • Valide la salida decodificada antes de inyectarla en HTML para evitar XSS por enlaces maliciosos.
  • Pruebe ambos modos si el producto admite enlaces profundos desde plantillas de correo o SMS.

Casos de uso ideales

  • Desarrollo web: Filtros de búsqueda, parámetros UTM y URIs de redirección OAuth con confianza.
  • Integración con APIs: Comportamiento acorde cuando la documentación cita percent-encoding RFC 3986.
  • QA y soporte: Reproduzca URLs de clientes sin adivinar qué caracteres se escaparon.
  • Documentación: Muestre ejemplos exactos antes/después para integraciones de socios.
  • Scripts de migración: Compare reglas de escape heredadas con funciones modernas del navegador.

Preguntas frecuentes

¿Cuál es la diferencia entre codificación de componente y de URL completa?

La codificación de componente (encodeURIComponent en JavaScript) aplica percent-encoding a casi todos los caracteres reservados, que es lo adecuado para claves o valores de consulta individuales. La codificación de URL completa (encodeURI) deja delimitadores como : / ? & = para que la cadena siga siendo navegable.

¿Cuándo usar decodeURIComponent frente a decodeURI?

Debe coincidir con el codificador: decodeURIComponent para un solo componente, decodeURI para una cadena que aún debe parecer una URL completa con barras y separadores de consulta.

¿Se envían mis datos a sus servidores?

No. La codificación y decodificación se ejecutan por completo en su navegador; no hay subida de datos.

¿Qué significa «codificación porcentual»?

Los bytes que no pueden aparecer literales en una URL se escriben como % seguido de dos dígitos hexadecimales (por ejemplo, un espacio se convierte en %20). Es lo que RFC 3986 llama percent-encoding.

¿Por qué la decodificación muestra un error?

Secuencias % mal formadas (número impar de hexadecimales, UTF-8 no válido tras decodificar o modos mezclados) pueden fallar. Revise la cadena o pruebe el otro tipo si codificó una URL completa como componente.

Codificador/decodificador de URL — codificar y decodificar URLs online gratis