Cómo codificar y decodificar URLs

Desarrollador

Aprende por qué se necesita la codificación de URLs, cómo codificar caracteres especiales para usarlos de forma segura en URLs y cómo decodificar cadenas con codificación porcentual.

Guía paso a paso

1

Comprende la codificación de URL

Las URLs solo pueden contener un conjunto limitado de caracteres ASCII. Los caracteres especiales (espacios, &, =, #, etc.) deben codificarse con porcentaje: sustituirse por % seguido de un código hexadecimal de dos dígitos. Ejemplo: espacio→%20, &→%26.

2

Codifica una URL con nuestra herramienta

Pega tu cadena en el Codificador URL. Haz clic en Codificar para convertir todos los caracteres especiales a sus equivalentes codificados con porcentaje. El resultado es seguro para usar en URLs.

3

Decodifica una cadena codificada

Pega una cadena codificada con porcentaje y haz clic en Decodificar para ver el texto original. Útil cuando recibes una URL ilegible de un log, respuesta de API o formulario web.

4

Codifica solo el valor de la consulta, no la URL completa

Si construyes una URL como https://example.com/search?q=hello world, codifica solo el valor: q=hello%20world. Codificar la URL completa también codificaría ://, ? y =, rompiendo la estructura.

5

encodeURIComponent vs encodeURI en JavaScript

encodeURIComponent codifica todo excepto los caracteres no reservados (A-Z, a-z, 0-9, -, _, ., ~). Úsalo para valores de consulta. encodeURI omite los caracteres estructurales de URL (:, /, ?, #). Úsalo para URLs completas.

Usar nuestra herramienta

Codificador/Decodificador URL

Preguntas frecuentes

Q: ¿Cuál es la diferencia entre %20 y +?

A: Ambos representan un espacio, pero en contextos diferentes. %20 es la codificación porcentual estándar para espacios en cualquier parte de una URL. + se usa para espacios en las cadenas de consulta de formularios HTML (application/x-www-form-urlencoded).

Q: ¿Por qué las URLs muestran %3A o %2F?

A: %3A = dos puntos (:), %2F = barra diagonal (/). Aparecen cuando caracteres con significado estructural en URLs se incluyen en el valor de un parámetro de consulta y deben escaparse.

Q: ¿También hay que codificar la ruta?

A: Los segmentos de ruta deben codificar espacios y otros caracteres no ASCII, pero no las barras (/) que separan segmentos. Usa encodeURIComponent en cada segmento de ruta por separado.