Codificar URL

Codificar y decodificar componentes de URL

Entrada
Salida

¿Qué es la codificación de URL / percentual?

Las URLs solo pueden contener un pequeño conjunto de caracteres ASCII. Cualquier otra cosa — espacios, letras acentuadas, emoji, caracteres reservados como `&`, `=`, `?` — debe ser codificada en porcentaje como `%` seguido de dos dígitos hexadecimales que representan los bytes UTF-8. Un espacio se convierte en `%20`, `é` se convierte en `%C3%A9`, el signo de interrogación se convierte en `%3F`.

Usa la codificación 'componente' al escapar una sola pieza (un valor de parámetro de consulta, un segmento de ruta) — equivalente a `encodeURIComponent` de JavaScript. Usa la codificación 'URL completa' al escapar una URL entera que ya tiene delimitadores estructurales que deseas preservar — equivalente a `encodeURI`.

Casos de uso

  • Construir cadenas de consulta — codificar en porcentaje la entrada del usuario antes de introducirla en parámetros `?q=`.
  • Inspeccionar registros del servidor — decodificar URLs dañadas para leer la ruta original (`/Users/%E4%B8%AD%E6%96%87/...`).
  • Depurar redirecciones de OAuth — pegar un `redirect_uri` para ver exactamente a qué se decodificó la devolución de llamada de OAuth.
  • Leer ejemplos de curl — copiar una URL codificada en porcentaje de un tutorial y decodificarla para entender la solicitud.

Ejemplos

EntradaResultado
hello world & friendshello%20world%20%26%20friends
café/menu?id=123caf%C3%A9%2Fmenu%3Fid%3D123 (component) or caf%C3%A9/menu?id=123 (full URL)

Preguntas frecuentes

¿Cuál es la diferencia entre encodeURI y encodeURIComponent?

`encodeURI` deja intactos los caracteres estructurales de la URL (`:`, `/`, `?`, `#`, `&`, `=`) — para codificar una URL completa. `encodeURIComponent` también escapa esos — para codificar una sola pieza que va en una URL.

¿Puede manejar caracteres no ASCII?

Sí. Los caracteres fuera de ASCII se codifican como sus bytes UTF-8 (1–4 bytes), cada uno representado como `%XX`.

¿Se interpreta `+` como un espacio al decodificar?

No. Esta herramienta utiliza decodificación estándar de URL, que deja `+` sin cambios. La regla `+`-significa-espacio es específica para datos de formulario `application/x-www-form-urlencoded`, y esta herramienta no tiene un modo de decodificación de formulario separado.

¿Por qué se rompe mi URL después de codificarla?

Codificaste caracteres estructurales (`:`, `/`, `?`, `#`) que necesitaban permanecer literales. Esta herramienta siempre realiza codificación de componentes (`encodeURIComponent`), que los escapa — así que codifica solo los valores de consulta individuales o segmentos de ruta, no toda la URL.

¿Se sube algo?

No — la codificación y decodificación se realizan completamente en tu navegador.