Programación

1º DAM/DAW - Curso 2024-2025

User Tools

Site Tools


apuntes:servlets

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
apuntes:servlets [2023/05/28 20:31] Santiago Faciapuntes:servlets [2023/05/28 20:38] (current) – [Arquitectura cliente-servidor] Santiago Faci
Line 12: Line 12:
 {{ cliente_servidor.jpg }} {{ cliente_servidor.jpg }}
 <caption>Arquitectura cliente-servidor</caption></figure> <caption>Arquitectura cliente-servidor</caption></figure>
 +
 +==== Protocolo HTTP ====
 +
 +El protocolo HTTP es un protocolo para la transferencia de páginas web (hipertexto) entre los clientes (navegadores web) y un servidor web. Cuando un usuario, a través del navegador, quiere un documento (página web), éste lo solicita mediante una petición HTTP al servidor. Éste le contestará con una respuesta HTTP y el documento, si dispone de él. 
 +
 +Hay que tener en cuenta que, al contrario que el resto de protocolos que estamos viendo en esta parte, HTTP no tiene estado. Eso significa que un servidor web no almacena ninguna información sobre los clientes que se conectan a él. Así, cada petición/respuesta supone una conexión única y aislada. En cualquier caso, utilizando tecnologías en el lado servidor es posible escribir aplicaciones web que puedan establecer sesiones o cookies para almacenar ese estado y "recordar" de alguna manera a los clientes en sucesivas conexiones
 +
 +<figure>
 +{{ http.png }}
 +<caption>Protocolo HTTP</caption></figure>
 +
 +A continuación, a modo de ejemplo, podemos ver una petición HTTP que un navegador (//Firefox//) ha realizado a un sitio web (//misitio.com//), solicitando el documento //index.html//.
 +
 +<code bash>
 +GET /index.html HTTP/1.1
 + Host: www.misitio.com
 + User-Agent: cliente
 + Referer: www.google.com
 + User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:45.0) Gecko/20100101 Firefox/45.0
 + Connection: keep-alive
 + [Línea en blanco]
 +</code>
 +
 +Y el servidor web le contesta con el contenido del documento para que el navegador que lo ha solicitado lo pueda renderizar para que el usuario lo visualice en su pantalla:
 +
 +<code bash>
 +HTTP/1.1 200 OK
 +Date: Fri, 31 Dec 2003 23:59:59 GMT
 +Content-Type: text/html
 +Content-Length: 1221
 +
 +<html lang="es">
 +<head>
 +<meta charset="utf-8">
 +<title>Mi título</title>
 +</head>
 +<body>
 +<h1>Bienvenido a mi sitio.com</h1>
 +. . .
 +. . .
 +</body>
 +</html>
 +</code>
 +
  
 ==== Modelo en 3 capas ==== ==== Modelo en 3 capas ====
Line 148: Line 192:
 } }
 </code> </code>
 +
 +----
 +
 +(c) 2023 Santiago Faci
  
apuntes/servlets.1685305916.txt.gz · Last modified: 2023/05/28 20:31 by Santiago Faci