Codificador/Decodificador URL
Codifica o decodifica componentes URL. Usa encodeURIComponent para parámetros de consulta o encodeURI para URLs completas.
Codificación de componente (para parámetros de consulta):
Codificación de URL completa (preserva :, /, ?, #, etc.):
Todo sobre la codificación URL (percent-encoding)
¿Por qué necesitas codificar las URL?
La RFC 3986 define un conjunto restringido de caracteres permitidos en las URL: letras sin acento, dígitos y 4 símbolos (-, ., _, ~). Todos los demás caracteres — espacios, acentos, &, =, # — deben convertirse al formato percent-encoding (%XX) para ser transmitidos sin ambigüedad por navegadores y servidores.
Esta herramienta ofrece dos modos de codificación que corresponden a las funciones nativas de JavaScript: encodeURIComponent (codifica todos los caracteres especiales, ideal para valores de parámetros) y encodeURI (preserva los caracteres estructurales :, /, ?, #, adecuado para URLs completas). La distinción es esencial para evitar URLs rotas.
Todo el procesamiento ocurre en tu navegador mediante las funciones nativas del motor JavaScript. Ningún dato se envía a ningún servidor. Puedes codificar datos sensibles (tokens, claves API) con total privacidad.
¿Quién usa esta herramienta?
- Desarrolladores de APIs
- Codifica los valores de parámetros de consulta que contienen caracteres especiales (&, =, +) antes de integrarlos en llamadas REST o GraphQL. Un parámetro mal codificado puede romper una petición o provocar una vulnerabilidad de inyección.
- Especialistas SEO
- Decodifica URLs complejas de Google Search Console o herramientas de analítica para entender la estructura real de las páginas indexadas. Identifica parámetros UTM mal codificados que distorsionan tus estadísticas.
- Testers QA
- Prueba cómo tu aplicación maneja caracteres internacionales (acentos, ideogramas, emojis) en las URL. Una « é » ocupa 2 bytes en UTF-8 y produce %C3%A9 en percent-encoding.
- Equipos de marketing
- Crea y verifica enlaces con etiquetas UTM que contengan valores con espacios o caracteres especiales. Un utm_campaign=verano%202025 mal codificado puede perder tus datos de atribución en Google Analytics.
¿Cómo funciona la herramienta?
Pega tu texto o URL en el campo de entrada. Elige entre 4 acciones: codificar/decodificar un componente (encodeURIComponent) o codificar/decodificar una URL completa (encodeURI). El resultado aparece instantáneamente con un botón de copiar.
En modo componente, cada carácter no permitido se convierte a bytes UTF-8 y luego a secuencias %XX. En modo URL completa, los caracteres estructurales (:, /, ?, #, [, ], @, !, $, &, ', (, ), *, +, ,, ;, =) se preservan.
El botón Borrar reinicia ambos campos. No hay límite de tamaño del lado del servidor ya que todo el cálculo ocurre localmente. La herramienta gestiona correctamente cadenas UTF-8 multi-byte, incluyendo emojis e ideogramas CJK.
Preguntas frecuentes
- ¿Cuál es la diferencia entre encodeURI y encodeURIComponent?
- encodeURIComponent codifica todos los caracteres especiales, incluyendo :, /, ?, # y &. Está diseñado para codificar valores de parámetros de consulta. encodeURI preserva estos caracteres estructurales y se usa para codificar una URL completa manteniendo su estructura intacta.
- ¿Por qué un espacio se convierte en %20 y no en +?
- La RFC 3986 especifica %20 como la codificación estándar de un espacio en URLs. El + como espacio es una convención histórica del formato application/x-www-form-urlencoded (formularios HTML). encodeURIComponent usa %20, lo cual es correcto para la mayoría de los casos de uso modernos.
- ¿Mis datos se envían a un servidor?
- No. La codificación y decodificación ocurren enteramente en tu navegador mediante las funciones nativas de JavaScript (encodeURIComponent, decodeURIComponent, encodeURI, decodeURI). Ningún dato se transmite, almacena ni registra en ningún servidor remoto.
- ¿Cómo se gestionan los caracteres Unicode y los acentos?
- Las funciones de codificación URL convierten primero los caracteres a bytes UTF-8, luego cada byte se representa en formato %XX. Por ejemplo, « é » (U+00E9) se convierte en %C3%A9 porque ocupa 2 bytes en UTF-8. Los emojis como « 😀 » (U+1F600) producen 4 bytes: %F0%9F%98%80.