Codificador y decodificador de URL con tabla de parámetros
Al decodificar, el botón cambia primero cada signo + por un espacio y solo después resuelve los códigos %XX. Ese orden explica casi todas las sorpresas con este codificador y decodificador de URL. La herramienta convierte texto en ambos sentidos: espacios, tildes y símbolos como & o = pasan a códigos de porcentaje, por ejemplo %20 para el espacio o %C3%B1 para «ñ». Debajo del cuadro, una tabla lista los parámetros de consulta del texto actual.
El cuadro arranca con una URL de búsqueda de ejemplo.
Los botones, de izquierda a derecha
- Pega una URL, una cadena de consulta o cualquier texto. La tabla se actualiza con cada tecla.
- encodeURIComponent codifica un valor suelto y también escapa
/ ? : @ & = + $ # ,. - encodeURI (URL completa) deja esos caracteres como están, de modo que la dirección entera sigue funcionando.
- decodeURI devuelve los códigos de porcentaje a texto legible.
- «Copiar URL actual» copia el contenido del cuadro y «Borrar» lo vacía.
Un enlace dentro de otro enlace
Un enlace de inicio de sesión OAuth guarda su dirección de retorno en redirect_uri. Si pegas esa dirección interior tal cual, el primer & corta el parámetro. Codifícala antes con encodeURIComponent y después añádela al enlace exterior.
También sirve en sentido contrario. Un log muestra q=ca%C3%B1a+de+az%C3%BAcar y quieres saber qué escribió el cliente: pega la línea y decodifica. Con un enlace de campaña que lleva doce parámetros utm_, la tabla los ordena en filas cortas.
Trampas al decodificar y lo que no sale de tu navegador
- Un signo más real en una ruta se convierte en espacio.
%2Bsigue siendo un más. - Un
%sin dos dígitos hexadecimales detrás hace fallar la decodificación. El texto queda igual y no aparece ningún aviso. - Codificar dos veces:
%20pasa a%2520. - Si decodificas una URL completa, también se resuelven
%26y%3D, y la estructura de la consulta puede cambiar. - La tabla lee direcciones que empiezan por
http://ohttps://; el resto se trata como cadena de consulta. Muestra los valores decodificados, omite el fragmento tras#y pone cada clave repetida en su propia fila.
Todo ocurre en tu navegador. Pulsar un botón no envía ninguna petición, y solo el botón de copiar escribe en el portapapeles, cuando tú lo pulsas.
Preguntas frecuentes (FAQ)
encodeURI deja intactos caracteres como :/?#&= para que una URL entera siga funcionando. encodeURIComponent los escapa, que es lo que necesitas para el valor de un parámetro.