alltools.one
Web Development
2026-02-12
7 min
alltools.one Team
urlencodingweb-developmenthttpapi

Guía de Codificación de URLs: Por Qué y Cómo Codificar URLs

¿Alguna vez te preguntaste por qué los espacios en las URLs se convierten en %20 y los ampersands en %26? La codificación de URLs (también llamada codificación porcentual) convierte caracteres que no son seguros para URLs en un formato que los servidores web pueden entender.

Por Qué Importa la Codificación de URLs

Las URLs solo pueden contener un conjunto limitado de caracteres ASCII. Los caracteres especiales, espacios y texto no ASCII necesitan codificación para transmitirse de forma segura. Sin codificación, las URLs se rompen de maneras impredecibles — un espacio podría truncar una URL, un ampersand podría confundirse con un separador de parámetros.

Prueba nuestro Codificador/Decodificador de URLs para ver cómo cualquier texto se transforma al codificarse para URLs.

¿Qué Caracteres Necesitan Codificación?

Caracteres Seguros (no necesitan codificación)

Letras (A-Z, a-z), dígitos (0-9) y estos símbolos: -, _, ., ~

Caracteres Reservados (codificar cuando se usan como datos)

CarácterCodificadoPropósito en URLs
:%3ASeparador de esquema
/%2FSeparador de ruta
?%3FInicio de cadena de consulta
#%23Identificador de fragmento
&%26Separador de parámetros
=%3DSeparador clave-valor
+%2BA menudo representa espacio
@%40Separador de información de usuario
%%25Indicador de codificación

Siempre Codificar

Espacios (%20), caracteres no ASCII (bytes UTF-8 codificados) y cualquier carácter fuera del conjunto seguro.

Codificación de URLs en la Práctica

Parámetros de Consulta

El caso de uso más común. Al construir URLs de búsqueda o solicitudes de API:

https://api.example.com/search?q=hello%20world&lang=en

Datos de Formulario

Los formularios HTML con method="GET" codifican los valores de los campos automáticamente en la URL. Los espacios se convierten en + en la codificación de formularios (ligeramente diferente de la codificación porcentual).

Segmentos de Ruta

Los nombres de archivos e identificadores de recursos en las rutas de URL también necesitan codificación. Un archivo llamado my report.pdf se convierte en my%20report.pdf en la URL.

Codificación en Diferentes Lenguajes

JavaScript:

encodeURIComponent('hello world & more')
// "hello%20world%20%26%20more"

decodeURIComponent('hello%20world')
// "hello world"

Python:

from urllib.parse import quote, unquote
quote('hello world & more')
# 'hello%20world%20%26%20more'

Errores Comunes

  1. Doble codificación — Codificar una URL ya codificada convierte %20 en %2520
  2. Usar encodeURI en lugar de encodeURIComponentencodeURI omite caracteres reservados que importan en valores de consulta
  3. No codificar signos + — En URLs, + puede significar espacio. Codifica los signos más literales como %2B
  4. Olvidar caracteres no ASCII — Los caracteres Unicode necesitan codificación UTF-8 primero, luego codificación porcentual

Preguntas Frecuentes

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

encodeURI codifica una URL completa, omitiendo caracteres como :, /, ?, #. encodeURIComponent codifica todo excepto los caracteres no reservados — úsalo para valores individuales de parámetros de consulta.

¿Por qué los espacios a veces se convierten en + y a veces en %20?

La codificación de formularios (application/x-www-form-urlencoded) usa + para espacios. La codificación porcentual estándar usa %20. Ambos son válidos en diferentes contextos.

Recursos Relacionados

Published on 2026-02-12
URL Encoding Guide: Why and How to Encode URLs | alltools.one