## ¿Qué es una URL?

Si has navegado por la World Wide Web, indudablemente habrás oido el término URL y habrás utilizado URLs para acceder a varias páginas HTML de la Web. Entonces, ¿qué es exactamente una URL? Bien, lo siguiente es una sencilla, pero formal definición de URL:

Definición: URL es un acrónimo que viene de Uniform Resource Locator y es una referencia (una dirección) a un recurso de Internet.

Algunas veces es más sencillo (anque no enteramente acertado) pensar en una URL como el nombre de un fichero en la red porque la mayoría de las URLs se refieren a un fichero o alguna máquina de la red. Sin embargo, deberías recordar que las URLs pueden apuntar a otros recursos de la red, como consultas a bases de datos, o salidas de comandos.

Lo siguiente es un ejemplo de una URL:

    http://java.sun.com/

Esta URL particular direccióna la Web de Java hospedada por Sun Microsystems. La URL anterior, como otras URLs, tiene dos componentes principales:

- El indendificador de protocolo
- El nombre del recurso

En el ejemplo, http es el identificador de protocolo y //java.sun.com/ es el nombre del recurso.

El identificador de protocolo indica el nombre del protocolo a utilizar para buscar ese recurso. El ejemplo utiliza el protocolo Hyper Text Transfer Protocol (HTTP), que es utilizado típicamente para servir documentos de hypertexto. HTTP es sólo uno de los diferentes protocolos utilizados para acceder a los distintos tipos de recursos de la red. Otros protocolos incluyen File Transfer Protocol (ftp), Gopher (gopher), File (file), y News (news).

El nombre del recurso es la dirección completa al recurso. El formato del nombre del recurso depende completamente del protocolo utilizado, pero la mayoría de los formatos de nombres de recursos contienen uno o más de los siguientes componentes:

nombre del host
  nombre de la máquina donde reside el recurso.
nombre de fichero
  el path al fichero dentro de la máquina
número de puerto
  el número de puerto a conectar (normalmente es opcional)
referencia
  una referencia a una posición marcada dentro del recurso; normalmente identifica una posición específica dentro de un fichero (normalmente es opcional)

Para muchos protocolos, el nombre del host y el nombre del fichero son obligatorios y el número de puerto y la referencia son opcionales. Por ejemplo, el nombre de recuros para una URL HTTP debería especificar un servidor de la red (el nombre del host) y el path al documento en esa máquina (nombre de fichero), y también puede especificar un número de puerto y una referencia. En la URL mostrada anteriormente, java.sun.com es el nombre del host y la barra inclinada '/' es el path para el nombre del fichero /index.html.

Cuando construyas una URL, pon primero el indentificador de protocolo, seguido por dos puntos (:), seguido por el nombre del recurso, de esta forma:

    protocoloID:nombredeRescuros

El paquete java.net contiene una clase llamada URL que utilizan los programas Java para representar una dirección URL. Tus programas Java pueden construir un objeto URL, abrir una conexión con el, leer y escribir datos a través de esa conexión. Las páginas siguientes de esta lección le enseñan cómo trabajar con objetos URL en programas Java.

### También puedes ver

> java.net.URL

Nota sobre la terminilogía: El término URL puede ser ambiguo -- se puede referir al concepto de la dirección de algo en Internet o a un objeto URL en tus programas Java. Normalmente el significado es claro dependiendo del contexto de la sentencia, o si no importa que la sentencia se aplique a ambos. Sin embargo, donde los significados de URL deban diferenciarse uno del otro, este texto utiliza Dirección URL para indicar el concepto de una dirección de Internet y objeto URL para referirse a un ejemplar de la clase URL en tu programa.

Ozito