Codificador y decodificador de URL
Un codificador y decodificador de URL gratuito. Codifica texto o una dirección completa, convierte las secuencias %XX de nuevo en texto legible y ve los parámetros que lleva realmente una URL. Todo se convierte en tu navegador: no se sube nada.
Codificar o decodificar
Pega texto, una URL o una cadena codificada. Se convierte mientras escribes y no se sube ni se guarda nada.
Pega algo arriba para convertirlo.
Aún no hay nada convertido.
Tu texto se convierte localmente con JavaScript. Nunca se envía a un servidor, no se registra y no se guarda.
Las URL solo admiten un conjunto pequeño de caracteres. Todo lo demás —espacios, tildes, emojis o los caracteres que dan estructura a la URL, como & y ?— debe escribirse como % seguido de los dos dígitos hexadecimales de cada byte UTF-8. Esta herramienta hace la conversión en ambos sentidos y te muestra la URL resultante parte por parte.
Ventajas principales
Casos de uso habituales
Cómo usarlo
- 1.Elige la dirección. Selecciona Texto → codificado para codificar o Codificado → texto para decodificar.
- 2.Elige qué codificas. Deja Codificar una URL completa desactivado para un solo valor, como un parámetro; actívalo para una dirección completa que deba seguir funcionando.
- 3.Pega tu entrada. Se convierte mientras escribes. Si es una dirección web, el desglose muestra el host, la ruta y cada parámetro decodificado.
- 4.Copia o comprueba. Copia el resultado o pulsa Invertir para volver a convertirlo en sentido contrario y confirmar que obtienes el original.
La codificación porcentual, explicada
Las reglas vienen del RFC 3986 y de la especificación de formularios HTML. La mayoría de los errores se deben a aplicar la regla equivocada en el sitio equivocado.
%20 es un espacio, %2F una barra y %C3%A9 los dos bytes UTF-8 de é.- . _ ~ nunca necesitan codificarse. Hacerlo está permitido pero no sirve de nada.: / ? # [ ] @ ! $ & ' ( ) * + , ; = estructuran la URL. Dentro de un valor deben codificarse o cambian su significado.encodeURIComponent codifica todos los reservados y sirve para un valor. encodeURI los conserva y sirve para una dirección completa.%20 en %2520. Si ves %25 seguido de dos dígitos hexadecimales, algo codificó un valor ya codificado.Características principales
- Codifica y decodifica, con botón para invertir y comprobar
- Dos modos: un valor (encodeURIComponent) o una URL completa (encodeURI)
- Opción de + para los espacios, como los formularios HTML
- Desglosa la URL en esquema, host, ruta, fragmento y parámetros decodificados
- Indica dónde está una secuencia % mal formada en lugar de fallar en silencio
- Avisa cuando la entrada parece codificada dos veces
- Funciona sin conexión una vez cargada; sin cuenta ni subidas
Codificar no es escapar para HTML o SQL
La codificación porcentual hace seguro un valor dentro de una URL. No lo hace seguro dentro de HTML, JavaScript o una consulta a una base de datos: cada uno tiene sus propias reglas. Un valor bien codificado puede llevar un ataque de inyección cuando el servidor lo decodifica.
Codifica según el destino: codificación porcentual para URL, escape HTML para páginas y consultas parametrizadas para SQL. Si tus datos viajan en Base64 dentro de una URL, usa el alfabeto seguro para URL; nuestro codificador y decodificador Base64 hace ambas cosas.
Preguntas frecuentes
¿Qué es la codificación de URL?⌄
La codificación de URL, o codificación porcentual, escribe los caracteres no permitidos en una URL como un % seguido de dos dígitos hexadecimales por cada byte. Un espacio pasa a ser %20 y é pasa a ser %C3%A9, sus dos bytes UTF-8. Así cualquier texto puede viajar dentro de una URL sin cambiar su significado.
¿Qué diferencia hay entre encodeURI y encodeURIComponent?⌄
encodeURIComponent codifica todos los caracteres con significado especial en una URL, incluidos / ? & y =, por eso es la opción correcta para un valor como un parámetro. encodeURI los deja intactos para que una dirección completa siga funcionando. Usar encodeURI en un valor permite que un & interno parta tu parámetro en dos.
¿Un espacio es %20 o +?⌄
Ambos son correctos en sitios distintos. En la consulta de un formulario HTML (application/x-www-form-urlencoded) un espacio es +. En la ruta y en la mayoría de las API un espacio es %20 y + es un signo más. En caso de duda, %20 siempre es seguro.
¿Por qué veo %2520 en mi URL?⌄
%25 es el propio signo % codificado, así que %2520 es %20 codificado por segunda vez. Algo codificó un valor que ya lo estaba. Decodifícalo dos veces para recuperar el original y corrige el código para que codifique una sola vez.
¿La codificación de URL es un tipo de cifrado?⌄
No. Es totalmente reversible y no usa clave, así que cualquiera puede decodificarla. Nunca la uses para ocultar una contraseña, un token o datos personales en una URL: las URL acaban en registros, historiales y cabeceras Referer.