Introducción a HTTP y la Arquitectura de las Aplicaciones Web
Clasificado en Informática
Escrito el en español con un tamaño de 6,98 KB
Introducción
WWW: sistema de documentos enlazados entre sí a través de internet. ¿Qué es HTTP?HTTP: protocolo de la capa de aplicación que permite distribuir y compartir información entre sistemas mediante páginas web. IETF: Trabaja en la nueva versión de HTTP 2.0 que intentará mejorar la velocidad y la conexión con dispositivos de telefonía móvil. URL: serie de elementos fijados por un estándar que se usan para nombrar recursos en Internet y permitir la localización Formato: esquema:// usuario:contraseña @maquina :puerto /directorio /archivo?query#fragmento. parámetro obligatorio: host.
Protocolo HTTP
Funcionamiento HTTP: protocolo basado en el modelo cliente-servidor. No recuerda nada relativo a conexiones anteriores a la actual. Para cada objeto que se transfiere por la red, se realiza una conexión independiente. Pasos para que funcione: 1. Se especifica la dirección de la página. 2. Se decodifica la información de la URL. 3. Se establece conexión con el servidor web. 4. servidor envía está página y el cliente web interpreta el código HTML. 5. Se cierra la conexión. Mensaje HTTP: 4 campos: Línea de petición o respuesta. Encabezados. Línea vacía:. Cuerpo de mensaje:. Mensaje de petición: Enviada al servidor HTTP desde el cliente. Tres datos: Método de petición: Indica la acción que se pretende realizar sobre el recurso indicado en la petición. (GET y POST). Dirección URI del recurso: Ruta del recurso dentro del directorio raíz del sitio web. Versión de HTTP. Líneas de encabezado indican opciones relativas a la petición. Cuerpo de la petición está vacío si la petición usa el método GET y contiene información q se envía al servidor si usa el método POST. Métodos: Versión 1.0 HTTP: GET: Cliente obtiene información del servidor. POST: Cliente envía información al servidor. HEAD: Cliente obtiene información del servidor pero sin cuerpo de mensaje.
Versión 1.1 HTTP: PUT: Envía objetos al servidor indicados en la URI. DELETE: Elimina objetos del servidor indicados en la UR.I OPTIONS: Cliente obtiene info del servidor y negocia opciones de comunicación. TRACE: Averigua si la petición llega bien al servidor. CONNECT: solicita al servidor un canal de comunicación seguro usando HTTP. Encabezados: Host, user-Agent, Accept, Accept-Language, Accept-Encoding, Accept-Charset, Referer, Cache-Control, Connection: close, date, expires, pragma: no cache, cookie (Contenido de la cookie almacenada en el equipo cliente y relativa al sitio web al que se hace la petición), Upgrade. Encabezados de la respuesta: Date, Content-Length, Server, Last-Modified, Content-Language, Content-Type, Content-Encoding, Connection. Código de estado: Num de 3 cifras que se incluye en la línea de respuesta de un mensaje. Indica si una petición se recibió o se atendió correctamente. Códigos de estado: Mensaje informativo (1XX): Cliente recibe la petición y continua con el proceso Operación exitosa (2XX): La petición fue recibida y aceptada Redirección a otra URL (3XX): Indica al cliente que tiene que hacer alguna acción adicional para que se pueda resolver. (301: Cambiado permanentemente. Error por parte del cliente (4XX): Recibe una petición que es errónea o ns puede procesar la petición. Error del servidor (5XX): impide atender y procesar la petición. Cookies: Archivos que el navegador del cliente graba en el disco duro a petición del servidor. Almacenan datos que utiliza el servidor. Las cookies se clasifican en: Origen: Habilitadas por el sitio que estamos visitando. Cookies a terceros: Producidas por anuncios. Realizan un seguimiento de los usuarios a través de la web recogiendo información acerca de sus preferencias. Cookies de sesión: Se eliminan al cerrar el navegador. Cookies persistentes: No se borran al cerrar la sesión de navegación.
Super-cookies: no van asociadas a un nombre de dominio en concreto, sino a la extensión de dominio. Cookies zombis: se regeneran usando JavaScript o HTML. Cookie Flash: Archivo a modo de cookie que implementan las páginas de Flash. Arquitectura de las aplicaciones web: Aquellas cuyo código es descargado total o parcialmente desde la web. hacen uso de la tecnología cliente-servidor. Ejecución de código en el cliente: Se hace cargo de la ejecución de las sentencias que componen los scripts (plugins). Ejecución de código en el servidor: los programas del lado del servidor quienes interpretan y ejecutan los scripts, para luego generar como resultado código HTML. Ejecución de código mixta: mezcla de los dos modelos vistos anteriormente, existe código de programación para ejecutar en los dos lados. Conceptos: Plugin: Pequeño programa que se instala en el navegador para ofrecerle nuevas funcionalidades. Applet: Conjunto de sentencias insertadas en una página web para dotarla de interactividad. Servlet: Tecnología de Java que extiende y mejorar las funcionalidades de los servidores web. CGI: pequeños programas alojados en el servidor web que pueden utilizarse desde las páginas hospedadas.Tipos MIME: Estándar que especifica cómo debe transmitir un programa los archivos que no están codificados en ASCII. Los MIME indican el tipo de archivo que se transfiere del servidor web al cliente o navegador web. Tipos de MIME: Text/html: Video/mpeg: . Image/*: Tipos de cabeceras: Informar al cliente del tipo de datos que recibe del servidor con el encabezado content-type. Permitir la negociación de contenido. Encapsular una o más entidades dentro del cuerpo de mensaje, mediante los tipos MIME multipart. Se pueden referenciar de 3 lugares: Desde el servidor: Desde la página web. Desde el navegador web.