La URL de un sitio web, también conocida comúnmente como la «dirección del sitio web», es lo que alguien introduciría en un navegador web para acceder a un sitio web específico. Al pasar información a través de una URL, debe asegurarse de que sólo utiliza caracteres permitidos específicos. Estos caracteres permitidos incluyen caracteres alfabéticos, números y algunos caracteres especiales que tienen significado en la cadena de URL. Cualquier otro carácter que necesite ser añadido a una URL debe ser codificado para que no cause problemas durante el viaje del navegador para localizar las páginas y los recursos que está buscando.
Codificación de una URL
El carácter más comúnmente codificado en la cadena de URL es el carácter . Este carácter se ve cada vez que se ve un signo más (+) en una URL. Esto representa el carácter de espacio. El signo más actúa como un carácter especial que representa ese espacio en una URL. La forma más común de ver esto es en un enlace mailto que incluye un asunto. Si desea que el sujeto tenga espacios en él, puede codificarlos como «más»:
mailto:email?subject=this+is+my+subject
Este trozo de texto codificado transmitiría un tema de «este es mi tema». El carácter «+» de la codificación se sustituirá por un espacio real cuando se muestre en el navegador.
Para codificar una URL, simplemente reemplace los caracteres especiales con su cadena de codificación. Esto casi siempre comenzará con un carácter %.
Codificación de una URL
Estrictamente hablando, siempre debe codificar cualquier carácter especial que se encuentre en una URL. Una nota importante, en caso de que te sientas un poco intimidado por toda esta charla o codificación, es que generalmente no encontrarás ningún carácter especial en una URL fuera de su contexto normal excepto con los datos del formulario. La mayoría de las URLs utilizan los caracteres simples que siempre se permiten, por lo que no es necesario codificarlos.
Si envía datos a scripts CGI utilizando el método GET, debe codificar los datos tal y como se enviarán a través de la URL. Por ejemplo, si está escribiendo un enlace para promocionar un feed RSS, su URL tendrá que ser codificada para añadirla a la URL del script en la que lo está promocionando.
¿Qué debe ser codificado?
Cualquier carácter que no sea un carácter alfabético, un número o un carácter especial que se esté utilizando fuera de su contexto normal va a necesitar ser codificado en su página. A continuación se muestra una tabla de caracteres comunes que se pueden encontrar en una URL y su codificación.
Codificación URL de caracteres reservados
Carácter Propósito en URL Codificación :Protocolo separado (http) de la dirección%3B/Dominio y directorios separados%2F#Anclaves separados%23?Separar la cadena de consulta%3F&Separar los elementos de la consulta%24@Separar el nombre de usuario y la contraseña del dominio%40%Indica un carácter codificado%25+Indica un espacio%2BNo recomendado en URLs%20 o +
Tenga en cuenta que estos ejemplos codificados son diferentes de los que se encuentran con los caracteres especiales HTML. Por ejemplo, si necesita codificar una URL con un carácter ampersand (&), usaría %24, que es lo que se muestra en la tabla anterior. Si estabas escribiendo HTML y querías añadir un ampersand al texto, no podías usar %24. En su lugar, se usaría & o & , ambos escribirían el & en la página HTML cuando se renderice. Esto puede parecer confuso al principio, pero básicamente es la diferencia entre el texto que aparece en la página misma, que es parte del código HTML, y la cadena de URL, que es una entidad separada y por lo tanto está sujeta a diferentes reglas. El hecho de que el personaje «&», así como muchos otros personajes, puedan aparecer en cada uno no debe confundirte con las diferencias entre los dos.
Original de Jennifer Krynin. Editado por Jeremy Girard.