Integración de aplicaciones distribuidas en la web
Tecnología web
Integración de aplicaciones distribuidas en la web
Joan Vila
DISCA / UPV Departament d’Informàtica de Sistemes i Computadors Universitat Politècnica de València
Tecnología web
Indice
– Introducción
El protocolo HTTP
Diseño Y Aplicaciones de Sistemas Distribuidos
– Estructura de las aplicaciones web –Aplicaciones web: la parte cliente
Lenguajes de marcado: XML y HTML Webs interactivas: formularios Un ejemplo: la eurocalculadora (el cliente)
– Aplicaciones web: la parte servidora
La interfaz CGI Información de estado: sesiones y cookies Un ejemplo: la eurocalculadora (el servidor) El cliente: Applets El servidor: Servlets
2
– Diseño de aplicaciones web en Java
DYA– Servicios web
¿Qué es la Web?
server xyz.com
hipervínculo
server ab.com
Diseño Y Aplicaciones de Sistemas Distribuidos
N
hipervínculo
WWW browser
80 WWW server
80 WWW server
Se usa HTTP en esta conexión TCP
DYA
Internet
3
El cliente Web
Navegadores Web
– Son, básicamente, visores gráficos de información con formato, provinente de la red.
Diseño Y Aplicaciones de Sistemas Distribuidos
Una cuestión básica de diseño (o estrategia) es si están integrados en el propio sistema operativo como una extensión del navegador del sistema de ficheros.
– Tienen capacidad para trabajar unos protocolos y formatos básicos y extensiones (plugins) para ampliar su funcionalidad.
El protocolo básico para obtener la información es:
– HTTP yHTTPS – Manejan también otros protocolos como FTP, SMTP, Gopher, telnet, rm
El formato básico de la información que manejan es:
– En la generación actual todos manejan HTML / GIF / JPEG – Existe una nueva generación cuyo formato básico es XML
Tienen extensiones para manejar muchos otros formatos de ficheros:
– MPEG-1, PDF, PostScript,...
– Tienen capacidad de procesamiento, puesla mayoría incluyen soporte para ejecutar lenguajes de programación:
DYA
Scripts: JavaScript de Netscape, VBS (Visual Basic Script) de Microsoft Applets de Java.
4
El servidor Web
Servidores Web
– Son, básicamente, servidores de ficheros que atienden sus peticiones a través de la red (port 80).
Diseño Y Aplicaciones de Sistemas Distribuidos
– El protocolo básico esHTTP.
Algunos antiguos están basados en FTP, ya que este proporciona casi la misma funcionalidad.
– Pueden tener extensiones para ejecutar programas externos, denominados programas CGI (Common Gate Interface):
Lenguajes de programación de CGI’s: PHP, shell, Perl, C, ... Servlets: son CGI’s hechos en Java (clase JSDK)
DYA
5
Protocolo HTTP
Establecer conexión TCP C: telnetwww.w3.org 80 T: Trying 18.23.0.23 ... T: Connected to www.w3.org T: Escape character is ‘^[‘. Petición C: GET /hypertext/WWW/TheProject.html HTTP/1.0 HTTP C: S: HTTP/1.0 200 Document follows Respuesta S: MIME-Version: 1.0 HTTP S: Server CERN/3.0 Cabecera S: Content-Type: text/html MIME RFC 822 S: Content-Length:8247 S: S: The WWW consortium Cuerpo o S: entidad S: S: The World Wide WebConsortium S: S: The world Wibe Web is the universe of information
6
DYA
Diseño Y Aplicaciones de Sistemas Distribuidos
Protocolo HTTP
HTTP: HyperText Transfer Protocol
Definido en RFC1945, RFC2616
http://www.w3.org/pub/WWW/protocols
Diseño Y Aplicaciones de Sistemas Distribuidos
– La interacción suele realizarse sobre una conexión TCP (aunque no es estrictamente requerido)
Cada elemento de una página web suele emplear una conexión TCP/IP
– Identificadores de recursos (URL, URI)
http_URL = "http:" "//" host [ ":" port ] [ abs_path [ "?" query ]]
Tipos: de petición y de respuesta HTTP-message: Request | Response
– Mensajes:
DYA
7
Protocolo HTTP
HTTP: HyperText Transfer Protocol
– Estructura:
generic-message = start-line...
Regístrate para leer el documento completo.