Bienvenidos sean a este post, hoy hablaremos sobre el protocolo http, este protocolo es el mas utilizado en internet porque nos permite obtener informacion de forma mas practica e inmediata, tambien la facilidad de este lenguaje permitio una expansion del mismo por la red de redes y si bien existen muchos protocolos de comunicacion por las caracteristicas antes descriptas se popularizo por sobre el resto.

Este protocolo es de tipo cliente-servidor, su puerto por defecto es el 80 (aunque esto se puede modificar pero no es recomendable), su forma de conexion es muy practica la cual veremos a continuacion:

  • El usuario accede a una pagina ( https://tinchicus.com/dir/pag.html )
  • El navegador averigua por la direccion solicitada (tinchicus.com)
  • Una vez encontrada, el navegador se conecta por medio del puerto 80
  • Luego envia por la conexion: GET dir/pag.html (y despues un salto de linea)
  • El servidor devuelve la pagina a traves de la conexion
    < html > (salto de linea)
    < head > (salto de linea)
    < title > Pagina de … < /title > (salto de linea)
    ….
    < /html > (salto de linea)
  • El cliente muestra la informacion recibida y el servidor cierra la conexion

Esta estructura de comunicacion es la mas basica utilizada por este tipo de conexiones, en este caso se trata del protocolo HTTP/0.9 y en el caso de que solo fuera texto realizaria una sola conexion pero en el caso de que la misma tuviera tres imagenes, por ejemplo, este protocolo debera hacer cuatro conexiones: una para el codigo HTML y tres mas para las imagenes, siguiendo los pasos antes descriptos, para probar nuestra conexion podemos usar el telnet, este ahora es un programa externo en la mayoria de los sistemas operativos (Windows, Linux, etc) y si bien pueden instalarlos o habilitarlos (dependiendo del S.O) yo les recomiendo descargar el puTTY desde esta pagina:

https://www.putty.org/

Y utilizar la opcion de telnet

Es muy practico para varios tipos de conexiones como ssh, rlogin, telnet o serial que son muy utilizadas para conexiones a servidores o dispositivos como un switch o router, si ustedes ingresaran una direccion IP o un servidor web y donde dice port ponen 80 y seleccionan Connection Type como telnet cuando pulsen Open obtendran una conexion como se ve a continuacion

Podemos ver como nos envia el encabezado de nuestra pagina, la version del protocolo que se usa, y en este caso nos dice que es una mala busqueda porque usamos un navegador (browser) que el servidor no pudo comprender.

Esta version al ser tan simple pero con tanta popularidad se decidio actualizarla por lo que se creo la version 1.0, esta version agrego las siguientes caracteristicas:

  • En el GET envia tambien la version del protocolo para que el servidor sepa que version usar
  • En la comunicacion se intercambian las cabeceras
  • Entre los nuevos datos se envia el userAgent
  • Se agregaron nuevos metodos
  • Metodo PUT, crea un nuevo recurso en el servidor
  • Metodo POST, envio de informacion asociada a un recurso del servidor
  • Metodo DELETE, elimina un recurso
  • Metodo HEAD, el servidor emitira solamente las cabeceras, no las paginas

Para ir finalizando algunos codigos de errores que podemos obtener son los siguientes:

  • 200 Ok
  • 401 no autorizado
  • 404 archivo no encontrado
  • 500 error interno del servidor

Algunos son muy explicitos, p.e. 404, pero otros como el error 500 son del lado del servidor y rara vez nos informan cual puede ser la causa.

En resumen, hoy hemos visto que es el protocolo HTTP, porque es tan popular, como trabaja, como podemos probarlo, algunas caracteristicas que se agregaron en una actualizacion, algunos metodos que usa y algunos codigos de error, lo cual nos servira como informacion para proximos posts, espero les haya sido util sigueme en Twitter o Facebook para recibir una notificacion cada vez que subo un nuevo post en este blog, nos vemos en el proximo post.

Anuncios