1138

Capítulo 26 Aplicaciones Web: parte 1

previa. Cuando el usuario envía el formulario en la nueva página Web, todos los datos del formulario (incluyendo 
los campos 

"hidden"

) se envían al manejador del formulario en el servidor Web. Con la reescritura de URLs, el 

servidor Web incrusta la información de rastreo de sesión directamente en los URLs de los hipervínculos en los 
que el usuario hace clic para enviar las subsiguientes peticiones al servidor Web.

26.7.1 Cookies

Las

cookies

 proporcionan a los desarrolladores Web una herramienta para personalizar las páginas Web. Una 

cookie es una pieza de datos que, por lo general, se almacena en un archivo de texto en la computadora del usua-
rio. Una cookie mantiene información acerca del cliente, durante y entre las sesiones del navegador. La primera 
vez que un usuario visita el sitio Web, su computadora podría recibir una cookie; después, esta cookie se reactiva 
cada vez que el usuario vuelve a visitar ese sitio. La información recolectada tiene el propósito de ser un registro 
anónimo que contiene datos, los cuales se utilizan para personalizar las visitas futuras del usuario al sitio Web. 
Por ejemplo, las cookies en una aplicación de compras podría almacenar identifi cadores únicos para los usuarios. 
Cuando un usuario agregue elementos a un carrito de compras en línea, o cuando realice alguna otra tarea que 
origine una petición al servidor Web, éste recibe una cookie del cliente, la cual contiene el identifi cador único del 
usuario. Después, el servidor utiliza el identifi cador único para localizar el carrito de compras y realizar cualquier 
procesamiento requerido.

Además de identifi car a los usuarios, las cookies también pueden indicar las preferencias de compra del usua-

rio. Cuando un servidor Web recibe una petición de un cliente, el servidor puede analizar la(s) cookie(s) que envió 
al cliente durante las sesiones previas de comunicación, con lo cual puede identifi car las preferencias del cliente y 
mostrar de inmediato productos que sean de su interés.

Cada interacción basada en HTTP entre un cliente y un servidor incluye un encabezado, el cual contiene 

información sobre la petición (cuando la comunicación es del cliente al servidor) o sobre la respuesta (cuando la 
comunicación es del servidor al cliente). Cuando una página recibe una petición, el encabezado incluye informa-
ción como el tipo de petición (por ejemplo, 

GET

 o 

POST

) y cualquier cookie que se haya enviado anteriormente 

del servidor, para almacenarse en el equipo cliente. Cuando el servidor formula su respuesta, la información del 
encabezado contiene cualquier cookie que el servidor desee almacenar en la computadora cliente, junto con más 
información, como el tipo MIME de la respuesta.

La

fecha de expiración

 de una cookie determina la forma en que ésta permanecerá en la computadora del 

cliente. Si no establecemos una fecha de expiración para la cookie, el navegador Web mantendrá la cookie mien-
tras dure la sesión de navegación. En caso contrario, el navegador Web mantendrá la cookie hasta que llegue la 
fecha de expiración. Cuando el navegador solicita un recurso de un servidor Web, las cookies que el servidor Web 
envió previamente al cliente se devuelven al servidor como parte de la petición formulada por el navegador. Las 
cookies se eliminan cuando 

expiran

.

Tip de portabilidad 26.1

Los clientes pueden deshabilitar las cookies en sus navegadores Web para tener más privacidad. Cuando esos clientes 
utilicen aplicaciones Web que dependan de las cookies para mantener la información de estado, las aplicaciones no 
se ejecutarán correctamente.

Uso de cookies para proporcionar recomendaciones de libros

La siguiente aplicación Web muestra cómo utilizar cookies. El ejemplo contiene dos páginas. En la primera 
página (fi guras 26.20 y 26.22), los usuarios seleccionan un lenguaje de programación favorito de un grupo de 
botones de opción y envían el formulario al servidor Web, para que éste lo procese. El servidor Web respon-
de creando una cookie que almacena el lenguaje seleccionado y el número ISBN para un libro recomendado sobre 
ese tema. Después, el servidor despliega nuevos componentes en el navegador, que permiten al usuario seleccionar 
otro lenguaje de programación favorito o ver la segunda página en nuestra aplicación (fi guras 26.23 y 26.24), 
la cual enlista los libros recomendados que pertenezcan al (los) lenguaje(s) de programación que el usuario haya 
seleccionado. Cuando el usuario hace clic en el hipervínculo, las cookies previamente almacenadas en el cliente se 
leen y se utilizan para formar la lista de recomendaciones de libros.

El archivo JSP de la fi gura 26.20 contiene un 

Grupo de botones de selección

(líneas 26 a 39) con las opcio-

nes

Java, C, C++, Visual Basic 2005

 y 

VisualC# 2005

. Recuerde que puede establecer los objetos 

String

Mostrar 

26_MAQ_CAP_26_Deitel.indd1138

5/8/084:15:36PM