Codificación 🔒 Se ejecuta en tu navegador — no se envían datos

Codificador y Decodificador de URL

Codifica y decodifica URL, cadenas de consulta y parámetros con porcentaje, en tu navegador.

Entrada
Salida

Codificador y decodificador de URL - codificación porcentual online

Una URL solo admite un conjunto limitado de caracteres. Todo lo demás - espacios, tildes, ampersands, barras dentro de un valor, emojis o texto en árabe y japonés - debe codificarse en porcentaje antes de viajar con seguridad dentro de un enlace, una query string o el envío de un formulario. Este codificador y decodificador de URL gratuito hace la conversión al instante, en los dos sentidos y sin enviar nada a ningún servidor.

Pegue su texto y pulse Codificar para obtener una cadena lista para transportar, o pegue una URL codificada y pulse Decodificar para leerla en lenguaje claro. El selector de modo permite elegir entre encodeURIComponent y encodeURI, y esa decisión es la que determina si su enlace funciona o se rompe en silencio.

Diagrama: «a b&c=é» codificado carácter a carácter como «a%20b%26c%3D%C3%A9».CarácterBytes UTF-8Codificadoa61a␣20%20b62b&26%26c63c=3D%3DéC3 A9%C3%A9Se mantienen: letras, dígitos, - _ . ~Se escapa como %XX
Las letras pasan sin cambios. El espacio y los caracteres reservados & e = se convierten en %20, %26 y %3D, y la é se pasa primero a sus dos bytes UTF-8, C3 y A9, que se escriben cada uno como %XX.

Qué es la codificación de URL

La codificación de URL, también llamada codificación porcentual, sustituye un carácter no seguro por un signo de porcentaje seguido de su valor hexadecimal. Un espacio pasa a ser %20, una barra %2F y un interrogante %3F. Los caracteres fuera de ASCII se convierten primero a bytes UTF-8 y luego se codifican byte a byte, por eso una sola letra con tilde suele generar dos grupos de porcentaje y un emoji hasta cuatro.

encodeURIComponent o encodeURI: qué modo elegir

SituaciónModoMotivo
Codificar el valor de un parámetroencodeURIComponentEscapa &, =, ?, / y # para que el valor no se salga de su campo
Codificar un segmento de ruta, como un slugencodeURIComponentEvita que una barra dentro del valor cree un nivel de ruta nuevo
Limpiar una URL completa que ya tieneencodeURIRespeta los caracteres estructurales y la dirección sigue siendo una URL válida
Pasar una URL de retorno dentro de otra URLencodeURIComponentLa URL interior es un valor, no una estructura

Cómo codificar o decodificar una URL

  1. Pegue el texto, el valor del parámetro o la URL completa en el panel de entrada.
  2. Elija encodeURIComponent para un valor suelto o encodeURI para una dirección entera.
  3. Pulse Codificar para codificar o Decodificar para revertirlo.
  4. Copie la salida directamente a su código, a la barra del navegador o a su cliente de API.

Los caracteres que verá con más frecuencia

  • %20 - espacio. En envíos de formulario antiguos también verá + con el mismo significado.
  • %2F - barra inclinada, codificada cuando pertenece al valor y no a la ruta.
  • %3F y %26 - interrogante y ampersand, los dos delimitadores de los parámetros.
  • %3D - signo igual, que separa el nombre del parámetro de su valor.
  • %23 - almohadilla, que de otro modo se lee como el inicio del fragmento.
  • %2B - signo más, que debe codificarse o puede interpretarse como un espacio.

Cuándo necesita un codificador de URL

  • Al construir enlaces de búsqueda, filtro o paginación donde la entrada del usuario acaba en la query string.
  • Al pasar una URL de retorno como redirect_uri a un proveedor OAuth o a una pasarela de pago.
  • Al añadir parámetros UTM de campaña que contienen espacios o signos de puntuación.
  • Al decodificar un enlace de seguimiento largo recibido por correo para ver adónde apunta realmente.
  • Al depurar una llamada de API cuyo parámetro contiene JSON, una marca de tiempo o una firma.
  • Al trabajar con slugs no latinos, para que un título en persa, japonés o cirílico sobreviva al copiar y pegar.

Errores que rompen los enlaces

  • Codificación doble. Volver a codificar una cadena ya codificada convierte %20 en %2520. Decodifique primero y codifique una sola vez.
  • Codificar la URL entera con encodeURIComponent. Se escapan :// y las barras, y la dirección deja de ser una URL.
  • Confundir + con %20. Dentro de la query string un más puede significar espacio; dentro de la ruta significa un más literal.
  • Olvidar UTF-8. Las páginas antiguas que codificaban en ISO-8859-1 generan grupos que un decodificador moderno no puede revertir.
  • Fiarse del valor decodificado. Decodificar no es sanear: valide la entrada antes de usarla en una consulta o en HTML.

Se ejecuta por completo en su navegador

El codificador usa las propias funciones de JavaScript del navegador, así que no se sube, guarda ni registra nada. De ese modo las URL firmadas, los identificadores de sesión y los parámetros con datos de clientes se quedan donde deben: en su equipo.

Codificar URL en JavaScript, Python, PHP, Java y C#

LenguajeCodificar un valorNotas
JavaScriptencodeURIComponent(valor)encodeURI para una dirección completa
Pythonurllib.parse.quote(valor, safe='')quote_plus convierte los espacios en +
PHPrawurlencode($valor)urlencode usa + para los espacios
JavaURLEncoder.encode(valor, "UTF-8")Produce + para los espacios; en una ruta sustitúyelo por %20
C# / .NETUri.EscapeDataString(valor)HttpUtility.UrlEncode usa +
PowerShell[uri]::EscapeDataString($valor)Mismas reglas que .NET

Herramientas relacionadas

Las URL y los payloads viajan juntos. Decodifique binarios incrustados con el codificador Base64, lea el token de una URL de retorno con el decodificador JWT, dé formato a la respuesta con el formateador JSON y pruebe patrones con el probador de expresiones regulares.

Guías relacionadas