Full transcript
0:00Hoy vamos a hablar sobre el protocolo HTTP (Hypertext Transfer Protocol).
0:07El protocolo HTTP es quizá el más conocido del stack de protocolos de Internet, porque es usado para servicios web,
0:14desde el browser con el que ustedes están viendo esta clase a servicios web que se usan en aplicaciones móviles.
0:20Es tan usado que generalmente su puerto, el 80, jamás es bloqueado por firewalls de la red.
0:25El protocolo HTTP fue pensado para ser entendido por humanos, por lo que se compone de líneas de texto plano.
0:32Los mensajes HTTP tienen un área de encabezado llamado HEADER y un área de datos llamado BODY.
0:38En el header va la información para que el protocolo funcione, y en el BODY van los datos que queremos enviar.
0:44La primera línea del header corresponde a la ‘start line’, donde se identifica la versión de HTTP a usar y el método usado.
0:52Los métodos más conocidos son GET, POST y HEAD.
0:57GET se encarga de pedir información,
1:00POST se encarga de enviar información o datos para ser procesados
1:04y HEAD nos permite pedir solo los headers, sin BODY o área de datos
1:09El resto de los headers son información anexa que se utiliza para el protocolo.
1:13Por ejemplo: a quién le estoy pidiendo los datos, el tipo de datos,
1:18la versión del browser que estoy usando, u otras informaciones relevantes para el funcionamiento del servicio como son las Cookies.
1:24Además, es posible agregar headers personalizados, según lo que requiera nuestra aplicación.
1:29Pero espera ¿Y por qué se llaman Cookies? (???)
1:33El nombre “Cookie” viene de las magic cookies,
1:35que era información que un servidor recibía y luego enviaba al cliente sin ningún tipo de cambio.
1:41A su vez, el término “magic cookie” viene de las galletas de la fortuna, que son galletas con un mensaje dentro de ellas.
1:49El uso de Cookies se masificó para el protocolo HTTP porque
1:52el protocolo no tiene cómo mantener la información de los usuarios que se están conectando,
1:57y, por lo tanto, es necesario hacer que los clientes mantengan la información.
2:01Veamos cómo funciona el protocolo HTTP.
2:05Un servidor escucha en un puerto, generalmente el puerto 80.
2:09El cliente se conecta a él usando un protocolo orientado a conexión,
2:12le envía un Request y, dependiendo del pedido,
2:15el server va a enviar de vuelta, ya sea la respuesta con lo que se pidió el cliente, o un mensaje de error.
2:21Los mensajes de error en HTTP están codificados con números.
2:25Los códigos 100 corresponden a respuestas informativas.
2:28Los códigos 200 indican que todo fue bien.
2:32Los códigos 300 indican que el servidor no tiene la información, sino que debe ir a buscarla a otro lado, es decir, que hay que redirigir.
2:40Los códigos 400 indican que el cliente cometió un error al hacer el pedido,
2:44y los códigos 500 indican que hubo un error del lado del servidor.
2:49Algo importante que debemos mencionar es que HTTP no es lo mismo que HTML.
2:55HTTP es el protocolo de comunicación
2:58mientras que HTML es el lenguaje de marcado que se usa para, por ejemplo, armar páginas web.
3:04Cuando pedimos un sitio web a través de un browser, generalmente, primero nos van a mandar el “esqueleto” del sitio, el cual viene en HTML.
3:12Luego el browser va a revisar este esqueleto
3:15y, dependiendo del sitio web, puede que encuentre que necesite otros elementos para generar la vista de la página.
3:20Estos elementos pueden ser imágenes, archivos, css, javascript, etc.
3:26Estos elementos puede que se le soliciten al mismo servidor o a otro servidor según sea necesario
3:32Hay servidores se encargan de mediar la comunicación entre el cliente y otro servidor.
3:36Estos servidores reciben un mensaje HTTP,
3:39y luego solicitan la información a otro servidor.
3:42Una vez recibe la respuesta, le responde al cliente según lo que recibió.
3:47Este tipo de servidor web se conoce como un proxy.
3:51En esta clase hemos visto
3:52Qué es HTTP
3:53Su estructura
3:55y su funcionamiento
3:56Cualquier duda o consulta, ¡no duden en contactar al equipo docente!