Que es la codificacion URL? La codificacion por porcentaje explicada de forma sencilla
Pega un enlace que contenga un espacio en un navegador y ocurre algo curioso: el espacio se convierte en %20. Ese %20 es la codificacion URL en accion, y entenderla aclara toda una categoria de errores confusos relacionados con enlaces, formularios y APIs. Esta guia explica que es la codificacion URL, por que existe y cuando hay que codificar frente a decodificar, escrita para desarrolladores pero accesible para cualquiera que trabaje con enlaces.
Por que las URL necesitan codificacion
Una URL solo puede contener un conjunto limitado de caracteres: letras, digitos y un puñado de simbolos como guiones, puntos y barras. Todo lo demas tiene que representarse de otra manera.
El problema es que los datos reales estan llenos de caracteres fuera de ese conjunto. Espacios, signos de interrogacion, ampersands, barras, letras acentuadas y emojis aparecen en las cosas que queremos poner en las URL, como terminos de busqueda y valores de formularios. Muchos de esos caracteres tambien cumplen una funcion estructural especial dentro de una URL, por lo que insertarlos sin procesar confundiria a lo que sea que este leyendo el enlace. La codificacion URL es la manera acordada de transportar esos datos de forma segura.
Que hace la codificacion por porcentaje
La codificacion URL tambien se llama codificacion por porcentaje, y el nombre describe el mecanismo con exactitud.
Cualquier caracter que no este permitido se reemplaza por un signo de porcentaje seguido de dos digitos hexadecimales que representan el valor en bytes de ese caracter. Un espacio se convierte en %20. Un ampersand se convierte en %26. Una barra inclinada se convierte en %2F. Un signo de interrogacion se convierte en %3F.
Asi, la frase fish & chips dentro de una URL se convierte en fish%20%26%20chips. Los datos se conservan por completo, solo que escritos de una forma que todos los navegadores y servidores saben leer. Decodificar simplemente invierte el proceso, convirtiendo cada secuencia %XX de nuevo en el caracter original.
Donde mas importa: las cadenas de consulta
La parte de una URL despues del ? es la cadena de consulta, y es donde la codificacion demuestra su valor.
Una cadena de consulta es una lista de pares de clave y valor unidos por & y =, asi:
?city=New%20York&sort=price
Esos caracteres & y = son estructurales. Separan un par del siguiente y dividen las claves de los valores. Por eso, si un valor contiene a su vez un ampersand o un signo de igual, debe codificarse, de lo contrario se confundiria con la estructura de la cadena de consulta y todo se analizaria mal. Codificar el valor evita que los datos del usuario y la fontaneria de la URL se confundan entre si.
Cuando codificar y cuando decodificar
Las dos direcciones cubren dos momentos distintos en la vida de un enlace.
- Codifica cuando estas construyendo una URL a partir de valores en bruto: un termino de busqueda que escribio un usuario, un nombre de archivo, una direccion de correo, cualquier cosa que vaya a un segmento de ruta o a un parametro de consulta. Codificalo primero para que los caracteres especiales no puedan romper el enlace.
- Decodifica cuando estas leyendo una URL que construyo otra persona: al extraer un valor de una cadena de consulta, inspeccionar un enlace de un registro o convertir una direccion plagada de
%20en algo legible para humanos.
Una regla rapida: si vas a meter datos dentro de una URL, codificalos. Si vas a sacar datos de una, decodificalos.
En que se diferencia de Base64
A veces se confunde la codificacion URL con Base64, pero resuelven problemas diferentes.
La codificacion por porcentaje esta hecha especificamente para las URL y solo toca los caracteres que son inseguros en ese contexto, dejando legibles las letras y digitos normales. Base64, en cambio, reescribe todo su contenido de entrada en un alfabeto compacto de letras, digitos y un par de simbolos, pensado para mover datos binarios a traves de canales que solo admiten texto, no para crear una URL limpia. Ambos no son intercambiables: usa la codificacion por porcentaje para hacer que un valor sea seguro en una URL, y Base64 cuando necesites representar contenido binario como texto plano.
Codifica y decodifica en tu navegador
No necesitas buscar codigos hexadecimales a mano. La herramienta gratuita Codificar/Decodificar URL convierte texto a forma codificada por porcentaje y de vuelta con un solo clic, para que puedas preparar un valor de consulta o leer un enlace desordenado en segundos.
Como la herramienta Codificar/Decodificar URL se ejecuta por completo en tu navegador, no hay registro y nada de lo que pegues se sube a ningun lado. Eso la hace segura para enlaces y parametros que puedan contener valores sensibles.
Herramientas relacionadas
La codificacion rara vez viaja sola, asi que vale la pena conocer a algunos vecinos. Cuando necesites transportar datos binarios como texto en lugar de hacer segura una URL, la herramienta Codificar/Decodificar Base64 se encarga de esa conversion. Para proteger caracteres como < y & dentro del contenido de una pagina web en lugar de enlaces, la herramienta Codificar/Decodificar HTML los escapa correctamente. Y cuando una respuesta de API vuelve como una cadena densa de datos, el Formateador de JSON la hace legible con la sangria adecuada.
La version corta
La codificacion URL, o codificacion por porcentaje, reemplaza los caracteres inseguros por codigos %XX para que los espacios y los caracteres especiales no puedan romper un enlace, lo que importa sobre todo dentro de las cadenas de consulta. Codifica al construir una URL, decodifica al leer una, y recurre a Base64 solo cuando necesites binario como texto. Cuando quieras que lo hagan por ti, la herramienta Codificar/Decodificar URL se encarga de ambas direcciones en tu navegador.
Prueba Codificar URL ahora
Codificador y decodificador de URL gratis online. Codifica query strings con porcentajes o convierte %20 de vuelta a texto al instante en tu navegador. Sin registro.
Abrir Codificar URL