IA en tu dispositivo: profesional y privado.

Herramienta online de codificador decodificador URL

Codifique o decodifique URLs: cuatro perfiles, 37 juegos de caracteres.

  • Funciona en su dispositivo
  • Perfiles RFC 3986 estricto y formulario
  • Recupera escapes rotos en lugar de fallar
  • 10 MB gratis · 20 archivos con Pro

Suelte un archivo de texto con URLs para convertir

Un archivo de hasta 10 MB. TXT, CSV, LOG, JSON y más.

Pro
0 caracteres · 0 B
Cómo convertir
Dirección
Perfil de codificación

Se mantienen literales: !'()*-.0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ_abcdefghijklmnopqrstuvwxyz~

UTF-8 más los juegos heredados de un byte. Los multibyte son solo de decodificación.

Un valor de consulta o segmento de ruta. Igual que encodeURIComponent.

Entrada
Salida
Pegue una URL o suelte un archivo para empezar.

Cómo codificar o decodificar una URL

  1. 1

    Elija Codificar o Decodificar

    Codificar convierte los caracteres que una URL no puede llevar literalmente en secuencias de escape con porcentaje. Decodificar los revierte a texto plano. El resultado se actualiza mientras escribe, así que no hay nada que pulsar para una sola URL.

  2. 2

    Elija un perfil de codificación

    Componente sirve para un valor de consulta o un segmento de ruta. RFC 3986 estricto además escapa ! ' ( ) * y es lo que exigen OAuth 1.0 y la firma de peticiones de AWS. URL completa mantiene : / ? & = intactos para que el enlace siga siendo navegable. Formulario coincide con lo que envía un navegador al enviar un formulario.

  3. 3

    Ajuste el juego de caracteres si los datos no son UTF-8

    Déjelo en UTF-8 salvo que trabaje con un sistema heredado. Una cadena de consulta producida por una plataforma antigua puede contener bytes Windows-1252 o Shift_JIS, y elegir el juego correcto es lo que convierte %E9 en el carácter que debía ser en lugar de en un error.

  4. 4

    Copie, descargue o vuelva a pasar el resultado

    Copiar pone todo el resultado en el portapapeles, Descargar lo guarda como archivo de texto, y Usar salida como entrada mueve el resultado al cuadro de entrada e invierte la dirección para comprobar que el ciclo se cierra.

Qué hace cada ajuste

Cada control de abajo cambia los bytes que salen, y cada uno existe porque un flujo de trabajo real lo necesita. Nada está restringido: las opciones son las mismas tenga o no una cuenta.

Codificar y decodificar

Codificar convierte en escapes con porcentaje los caracteres que una URL no puede llevar literalmente. Decodificar los revierte. La dirección también decide qué juegos de caracteres se ofrecen, porque los dos no son simétricos: un navegador puede leer muchas más codificaciones heredadas de las que puede escribir.

El perfil de codificación

El perfil es el conjunto de caracteres que se dejan intactos. Es la elección más consecuente de la página, y equivocarse produce una salida que parece correcta y que un servidor concreto rechaza. La sección siguiente compara los cuatro.

El juego de caracteres

Déjelo en UTF-8 salvo que sepa lo contrario. Decide qué bytes representan los escapes, y es la diferencia entre que %E9 se lea como una e acentuada o sea un error. Es independiente de cómo se lee un archivo soltado: un archivo Windows-1252 puede contener legítimamente escapes UTF-8, y entonces ambos ajustes son correctos a la vez.

Decodificación tolerante

Activada por defecto. Un escape malformado deja intacto el texto que lo rodea y se informa con su posición exacta, en lugar de hacer fallar toda la cadena. Desactívela cuando quiera un fallo rotundo, por ejemplo al validar que una cadena está bien formada en lugar de intentar leerla.

Pasadas de decodificación repetida

Decodifica hasta cinco veces, deteniéndose en cuanto una pasada no cambia nada. El número informado es la profundidad real de la codificación, no el ajuste, así que una cadena codificada una sola vez seguirá informando una pasada por alto que ponga el control.

Más como espacio

Un signo más significa espacio en datos de formulario y en ningún otro sitio. Se aplica por perfil: en modo URL completa la sustitución solo ocurre después del primer signo de interrogación, así que un más literal en una ruta sobrevive. En los modos componente y formulario se trata toda la cadena como consulta, porque lo es.

Escapes heredados %uXXXX

Las cadenas producidas por la antigua función escape() de JavaScript, y por varias plataformas antiguas de Microsoft, usan %u seguido de cuatro dígitos hexadecimales para un carácter no ASCII. El decodificador estándar las rechaza sin más. Active esto para leerlas.

Línea a línea

Convierte cada línea por separado y le devuelve su propio final de línea. Es el ajuste para una lista de enlaces: codificar todo el archivo como una sola cadena escaparía los propios saltos de línea y daría una única línea inservible.

Recortar los espacios circundantes

Desactivado por defecto, y a propósito. Los espacios son precisamente el tipo de carácter que el percent-encoding existe para preservar, así que eliminarlos en silencio anularía la herramienta. Actívelo cuando haya copiado una URL de un correo y arrastre un salto de línea.

¿Por qué usar un codificador y decodificador de URL?

Los navegadores, servidores y cachés tratan ciertos caracteres como estructura: espacios, ampersands, almohadillas y texto no ASCII necesitan escaparse cuando son datos y no sintaxis. Una herramienta dedicada le permite ver la cadena exacta que enviará un cliente HTTP, antes de publicar el código que la construye.

Ventajas de una codificación correcta

  • Transmisión segura — los caracteres reservados en contenido de usuario dejan de romper los analizadores que separan rutas, consultas y fragmentos.
  • Compatibilidad Unicode — los bytes UTF-8 se representan como secuencias % para que el texto internacional sobreviva a transportes ASCII.
  • APIs predecibles — alinearse con RFC 3986 reduce discrepancias entre el front-end, las apps móviles y los frameworks de backend.
  • Menos errores 400 — los parámetros bien codificados tienen menos probabilidad de ser rechazados por pasarelas o proxies estrictos.
  • Depuración más fácil — compare una cadena construida a mano con lo que producen las funciones estándar antes de publicar una corrección.

Cómo funciona la codificación de URL

El percent-encoding reescribe como %HH cada byte que no debe aparecer literalmente en una URL, donde HH es hexadecimal. Qué caracteres quedan literales depende de si protege una URL entera o un componente individual, y eso es lo único que separa los cuatro perfiles siguientes.

De caracteres a bytes y a escapes

  • Primero los caracteres se vuelven bytes — el texto se convierte a bytes en el juego elegido. En UTF-8 una e acentuada son dos bytes y un carácter japonés son tres.
  • Cada byte se comprueba — un byte del conjunto seguro del perfil se escribe literal; todo lo demás pasa a % seguido de dos dígitos hexadecimales.
  • El espacio es el caso especial — en codificación de formulario un espacio pasa a signo más en lugar de %20, y es el único sitio donde esa sustitución es correcta.
  • Decodificar recorre el camino inverso — los escapes se agrupan en tramos de bytes y se decodifican juntos, porque un carácter suele ser varios escapes seguidos.

Elegir el perfil de codificación correcto

Los cuatro perfiles solo se diferencian en qué caracteres dejan intactos, pero esa diferencia decide si una firma se valida y si un enlace sigue funcionando. Esto es lo que cada uno mantiene literal y cuándo recurrir a él.

Componente

Deja intactos letras, dígitos y - _ . ! ~ * ' ( ). Coincide con la función estándar encodeURIComponent y es el valor por defecto correcto para un valor de consulta, un campo de formulario o un segmento de ruta. Úselo salvo que uno de los tres siguientes describa su situación.

RFC 3986 estricto

Deja intactos solo letras, dígitos y - . _ ~, el conjunto no reservado de la especificación y nada más. Los cinco caracteres extra que mantiene el modo componente (! ' ( ) *) aquí se escapan. Recurra a él al construir una cadena base de firma OAuth 1.0 o una petición canónica de AWS Signature Versión 4, que exigen el conjunto estricto. Una discrepancia aquí solo falla cuando uno de esos cinco caracteres aparece en los datos, lo que la convierte en una de las incidencias más difíciles de reproducir.

URL completa

Mantiene los delimitadores que dan forma a una URL — : / ? # & = + $ , ; @ — para que un enlace completo siga siendo navegable tras la codificación. Úselo cuando limpie una URL entera en lugar de ensamblar una. La decodificación es deliberadamente asimétrica en este modo: %2F sigue siendo %2F, porque convertirlo en barra añadiría un segmento de ruta que no existía. La casilla Decodificar también los delimitadores anula eso cuando quiere texto plano.

Formulario

Mantiene solo letras, dígitos y * - . _ , y escribe un espacio como signo más. Es lo que un navegador pone realmente en la red al enviar un formulario, y lo que produce URLSearchParams. Conviene saber que no es la única definición en circulación: quote_plus de Python escapa el asterisco y mantiene la virgulilla, lo contrario en ambos casos. Esta herramienta sigue el estándar web actual, porque es contra lo que se construyó el servidor receptor.

Juegos de caracteres y sistemas heredados

Una cadena codificada es una secuencia de bytes, y qué caracteres significan esos bytes depende por completo de la codificación que usara el sistema. Aquí es donde las herramientas que solo hablan UTF-8 se rinden, y es una parte grande del trabajo real.

Leer datos heredados

Hay treinta y siete juegos de caracteres disponibles para decodificar, que cubren las familias de un byte — de Windows-1250 a 1258, la serie ISO-8859, KOI8-R y KOI8-U, los juegos de Mac e IBM866 — más los juegos multibyte de Asia oriental Shift_JIS, EUC-JP, ISO-2022-JP, EUC-KR, GBK, GB18030 y Big5. Casi todo lo producido por una plataforma PHP, ASP o Java anterior a 2010 necesitará uno de estos.

Escribir datos heredados, y lo que no es posible

Hay veintiocho juegos disponibles para codificar: UTF-8 y todos los juegos de un byte anteriores. Los juegos multibyte de Asia oriental son solo de decodificación, y ese límite se declara aquí en vez de ignorarse en silencio. Un carácter que el juego de destino no puede representar se escribe como referencia numérica, por ejemplo €, en lugar de descartarse o sustituirse por un interrogante, que es exactamente lo que hace un navegador al enviar un formulario en una página con codificación heredada, así que el servidor receptor ya sabe leerlo.

Cuando la decodificación falla y qué hacer

La mayoría de las herramientas de esta categoría, y la función estándar decodeURIComponent sobre la que se construyen, tratan la decodificación como todo o nada. Un solo carácter malo y recibe un mensaje de error en lugar de sus datos. Estas son las cuatro cosas que realmente fallan y cómo las trata esta herramienta.

  • Un escape truncado — un % con menos de dos dígitos hexadecimales detrás, normalmente porque la URL quedó cortada por una línea de registro o un campo de texto. La decodificación tolerante lo deja estar e informa de su posición.
  • Bytes que no son válidos en el juego de caracteres — %E9 por sí solo no es UTF-8 válido. O los datos están en una codificación heredada — elíjala de la lista — o la cadena está realmente dañada, en cuyo caso el modo tolerante marca el punto.
  • Doble codificación — %2520 donde debía haber %20. Suba las pasadas de decodificación repetida; el desglose de parámetros señala cuáles están afectados.
  • %uXXXX heredado — no es percent-encoding en absoluto, sino la salida de la antigua función escape(). Active los escapes heredados para leerlo.

Inspeccionar una URL y sus parámetros

Pegue algo que parezca una URL y aparecerá un desglose bajo el resultado: el esquema, el host, el puerto, la ruta y el fragmento, y después una tabla con cada parámetro de consulta y su clave y valor decodificados individualmente.

Existe porque decodificar de golpe una URL de seguimiento entera produce una línea ilegible cuando la pregunta que tenía era qué contenía un parámetro concreto. La tabla decodifica cada clave y valor por separado y marca los que parecen doblemente codificados o contienen un escape roto; en la práctica suele ser un único parámetro, casi siempre un destino de redirección, y encontrarlo a ojo en un enlace con catorce parámetros es la parte que lleva tiempo. El desglose informa exactamente de los caracteres que pegó: no pasa el host a minúsculas, no elimina un puerto por defecto ni resuelve segmentos .., porque un diagnóstico que repara su entrada ha destruido la evidencia.

Datos que conviene recordar

Los detalles pequeños, como los signos más en envíos de formulario frente al percent-encoding real, hacen tropezar a los equipos cuando los frameworks no coinciden.

Referencia rápida

  • El espacio es %20 en una cadena de consulta, pero un signo más en un cuerpo application/x-www-form-urlencoded.
  • Solo los caracteres no reservados (letras, dígitos, - . _ ~) pueden aparecer sin codificar en la codificación estricta.
  • La doble codificación produce URLs más largas y puede confundir a los servidores; %2520 es la firma que hay que buscar.
  • El decodificador estándar falla ante un % seguido de hexadecimal incompleto, y entonces no devuelve nada en absoluto.
  • Un carácter japonés se convierte en nueve caracteres de salida, así que una cadena codificada puede ser muchas veces más larga que el texto.
  • Los nombres de dominio internacionalizados usan Punycode en DNS; la codificación de URL cubre la ruta y la consulta, no la conversión del host.

Buenas prácticas

Codifique en el límite donde el texto no confiable pasa a formar parte de una URL, y decodifique una vez cuando vuelva a tratarlo como datos.

  • Codifique cada valor de consulta individualmente en lugar de codificar la URL entera dos veces.
  • Registre la entrada bruta del usuario aparte de la cadena codificada al depurar analítica o redirecciones.
  • Prefiera enlaces HTTPS al compartir URLs codificadas que contengan tokens sensibles.
  • Valide la salida decodificada antes de inyectarla en HTML para evitar problemas con enlaces maliciosos.
  • Pruebe ambas direcciones si su producto admite enlaces profundos desde correo o SMS.

Casos de uso ideales

  • Desarrollo web — construya filtros de búsqueda, parámetros UTM y URIs de redirección OAuth con confianza.
  • Integración de APIs — iguale el comportamiento del SDK cuando la documentación menciona el percent-encoding de RFC 3986.
  • QA y soporte — reproduzca URLs de clientes sin adivinar qué caracteres se escaparon.
  • Documentación — muestre ejemplos exactos de antes y después para integraciones con socios.
  • Scripts de migración — compare las reglas de escape heredadas con lo que producen los clientes modernos.

Archivos, lotes y límites

Una URL suelta se escribe o se pega; una lista de ellas llega como archivo. Ambos caminos pasan por el mismo motor y cumplen los mismos límites.

Qué archivos abre

Texto plano y formatos con forma de texto: .txt, .log, .csv, .tsv, .md, .json, .xml, .html, .yaml, .ini, .env, .sql, .har, las extensiones de código habituales y los accesos directos .url. Cualquier otra cosa se rechaza por su nombre, con un enlace a la herramienta que sí la trata: un PDF se dirige al extractor de texto en lugar de ignorarse en silencio. El selector de archivos solo ofrece los formatos que funcionan, así que no puede elegir un archivo y ver que no pasa nada.

Qué codificaciones de texto lee

UTF-8, UTF-8 con marca de orden de bytes y UTF-16 en cualquiera de los dos órdenes cuando el archivo lleva una marca que lo identifica. Un archivo UTF-16 sin marca se rechaza en lugar de adivinarse, porque el orden de bytes es cara o cruz y equivocarse produce un sinsentido convincente en vez de un error. Sea cual sea la codificación con la que llegó, sale igual, así que un CSV de Windows no vuelve como algo que Excel abra mal.

Qué incluye la versión gratuita

Todos los perfiles de codificación, todos los juegos de caracteres que el dispositivo admita, la decodificación tolerante, la decodificación repetida, los escapes heredados, la conversión línea a línea y el desglose de parámetros; además de un archivo cada vez de hasta 10 MB y pegado ilimitado dentro del mismo tamaño. No se retiene ninguna función de conversión.

Qué añade Pro

Una cola de hasta veinte archivos, una descarga ZIP única para todo el lote y la eliminación del techo de 10 MB: Pro está limitado por lo que su dispositivo puede sostener, no por un número fijo mayor. El límite gratuito de 10 MB está donde está porque el percent-encoding es la rara operación de texto cuya salida es mayor que su entrada: cada byte puede convertirse en tres caracteres, así que 10 MB de entrada pueden ser 31 millones de caracteres de salida.

Limitaciones y compatibilidad

Tres cosas que esta herramienta deliberadamente no hace. Los juegos multibyte de Asia oriental están disponibles para decodificar pero no para codificar, porque sus tablas no pueden derivarse a la inversa de lo que ofrece un navegador. La decodificación repetida se detiene en cinco pasadas, muy por encima de cualquier profundidad vista en la práctica. Y el desglose de parámetros informa de la URL tal como se escribió en lugar de normalizarla, así que le mostrará encantado una URL malformada, que es justamente el objetivo.

Medido en la máquina de referencia: una URL de 100.000 caracteres se convierte en menos de un milisegundo, y un documento en el límite gratuito de 10 MB se convierte en bastante menos de un segundo. La conversión ocurre mientras escribe para hasta unos doscientos cincuenta mil caracteres; por encima de eso se mueve fuera del hilo de la interfaz para que la página nunca deje de responder.

Preguntas frecuentes

¿Cómo funciona este codificador y decodificador de URL?

Elija Codificar para convertir los caracteres reservados en secuencias de escape con porcentaje, o Decodificar para revertir la codificación válida a texto plano. Escoja un perfil, escriba o pegue su cadena y el resultado se actualiza en vivo. Copie la salida con un clic, o suelte un archivo de texto para convertir una lista entera de enlaces a la vez.

¿Cuál es la diferencia entre codificación de componente y de URL completa?

El modo componente codifica casi todos los caracteres reservados, que es lo que conviene para una clave o valor de consulta o un segmento de ruta. El modo URL completa deja intactos los delimitadores estructurales como : / ? & = para que la URL siga siendo navegable tras la codificación. Haga coincidir el decodificador con el que usó, o el ciclo no se cerrará.

¿Mis datos son privados y seguros?

Sí. Todo ocurre en su dispositivo y nada de lo que pega o suelta se envía a ninguna parte. Por eso también la herramienta sigue funcionando sin conexión una vez cargada la página, y por eso los límites que existen tienen que ver con lo que su propio dispositivo puede sostener, no con nuestros servidores.

¿Qué es el percent-encoding y cómo se tratan los caracteres Unicode?

El percent-encoding escribe cada byte que no puede aparecer literalmente en una URL como % seguido de dos dígitos hexadecimales, de modo que un espacio se convierte en %20. El texto no ASCII se convierte primero a UTF-8 y luego se escapa cada byte, así que los caracteres internacionales y los emoji sobreviven a transportes ASCII según RFC 3986. Un carácter japonés se convierte en nueve caracteres de salida, y por eso una cadena codificada puede ser varias veces más larga que lo que escribió.

¿Por qué decodeURIComponent falla con mi cadena y esta herramienta no?

La función integrada de JavaScript rechaza la cadena entera ante el primer escape malformado y no devuelve nada, así que un solo %E truncado al final de una línea de registro le cuesta la URL completa. Esta herramienta decodifica de forma tolerante por defecto: devuelve todo lo válido y le indica la posición exacta de cada secuencia que no pudo leer. Desactive la decodificación tolerante si prefiere un fallo rotundo.

¿Cómo arreglo una URL doblemente codificada?

Un valor que ha pasado dos veces por un codificador muestra %2520 donde debería mostrar %20. Suba el control de pasadas de decodificación por encima de uno y la herramienta decodificará hasta que la cadena deje de cambiar, indicándole después cuántas pasadas necesitó realmente. El desglose de parámetros también señala cada parámetro que parece doblemente codificado, que normalmente es solo uno.

¿Qué perfil debo usar para OAuth o para firmar peticiones de AWS?

RFC 3986 estricto. La función integrada encodeURIComponent deja cinco caracteres sin escapar — ! ' ( ) * — y tanto las cadenas base de firma de OAuth 1.0 como las peticiones canónicas de AWS Signature Versión 4 los exigen escapados. Equivocarse aquí produce una firma que solo se rechaza cuando uno de esos cinco caracteres aparece en los datos, y por eso es tan difícil de depurar.

¿Cuándo un signo más es un espacio?

Solo en datos application/x-www-form-urlencoded, es decir, cadenas de consulta y cuerpos de formulario. Un signo más en una ruta es un más literal. Esta herramienta aplica la regla por perfil y no a toda la cadena, así que decodificar https://ejemplo.com/a+b?q=c+d como URL completa deja la ruta intacta y solo convierte en espacio el más de la consulta.

¿Puedo codificar texto que no sea UTF-8?

Sí. La herramienta ofrece 28 juegos de caracteres para codificar — UTF-8 más los juegos heredados de un byte como Windows-1252, ISO-8859-5 y KOI8-R — y 37 para decodificar, que además cubren juegos multibyte como Shift_JIS, GB18030, Big5 y EUC-KR. Un carácter que el juego de destino no puede representar se escribe como referencia numérica en lugar de descartarse, que es lo que hace un navegador al enviar un formulario en una codificación heredada.

¿Puedo convertir un archivo entero o una lista de enlaces?

Sí. Suelte un .txt, .csv, .log, .json u otro de los formatos de texto aceptados, y active línea a línea para convertir cada línea por separado conservando su propio final de línea. Gratis convierte un archivo de hasta 10 MB; Pro amplía la cola a veinte archivos, añade una descarga ZIP única para el lote y levanta el límite de tamaño hasta lo que su dispositivo pueda manejar.

¿Es gratuita y funciona sin conexión en el móvil?

Sí. El codificador/decodificador de URL es completamente gratuito. Funciona en teléfonos, tabletas y ordenadores, y una vez cargada la página sigue funcionando sin conexión a internet.

4.8de 5

de 521 valoraciones

Valora esta herramienta

Toca una estrella — es un segundo