secciones

Codificación de URLs

En What every web developer must know about URL encoding se explica algo que resulta sorprendentemente difícil de hacer bien: Hacer encoding de URLs.

Algunas cosas destacables:

  • Las distintas partes de una url (el host, el path, el querystring) utilizan distintas codificaciones, por lo tanto no se puede hacer el encoding correctamente sin analizar la url (simplemente con un buscar y sustituir).
  • Sorprendente: La clase java.net.URLEncoder de Java no nos sirve para hacer encoding de URL (a pesar de su nombre). No solo eso, sino que la propia documentación oficial lo dice:

Utility class for HTML form encoding. This class contains static methods for converting a String to the application/x-www-form-urlencoded MIME format.

  • Aparte de los parámetros de la query, existen los parámetros del path. Es más, cada segmento de path (lo que vendrían a ser cada uno de los directorios) pueden tener sus propios parámetros, que se separan del fragmento por “;”, como en este ejemplo que se me ocurre:
http://www.example.com/user;domain=main/6677/connections;start=0;count=20

Comentarios cerrados para este artículo

Anterior: Cursos de Google en Udacity Siguiente: Stacktraces "perdidas" en Java