Beruflich Dokumente
Kultur Dokumente
Comercio Electrnico
Csar Fernndez Acebal Universidad de Oviedo
www.cesaracebal.com acebal@uniovi.es
Son necesarias alternativas software, por tanto, que permitan simular el estado
Alternativas
Aunque hay varias formas de hacerlo (dependiendo de si trabajamos en ASP, en J2EE) la mayora pasan por el uso de cookies Algunas de las alternativas son:
Usar el objeto Session (o similar) provisto por los entornos de programacin como ASP o J2EE (Servlets, JSP...) Almacenar toda la informacin de la sesin, a mano, en una cookie (por ejemplo, mediante JavaScript) Una combinacin de cookie (para guardar un ID de usuario) y bases de datos URL rewriting Etctera
Comercio Electrnico (EUITIO) Csar Acebal
Cookies
Veamos una introduccin a las cookies y algunos ejemplos en los que aprenderemos a manipularlas.
Detalles de implementacin
Segn la especificacin, un agente de usuario (es decir, un navegador), debe permitir al menos:
Un total de 300 cookies Hasta 4 KB (4.096 bytes) por cookie Al menos 20 cookies de un servidor dado
El navegador se encarga automticamente de eliminar aqullas que hace ms tiempo que no se utilizan cuando necesita guardar nuevas cookies
Sintaxis
Cada cookie presenta la siguiente sintaxis general:
nombre=valor; [expires=fecha; path=directorio; domain=nombreDeDominio; secure]
Lo nico obligatorio es que tenga un nombre y un valor asociado; el resto de atributos son opcionales
Aunque tambin se utiliza bastante el atributo expires
path El conjunto de directorios del servidor para los que es vlida esta cookie (por omisin, ser el raz /, es decir, todos)
Comercio Electrnico (EUITIO) Csar Acebal
Response.Cookies
Mediante la coleccin Cookies del objeto predefinido Response podemos establecer el valor de una cookie
Si la cookie especificada no existe, se crear Si existe, machacar el valor que tuviera anteriormente
Ejemplo:
<% Response.Cookies(IDUsuario) = 49 Response.Cookies(IDUsuario).Expires = December 31, 2004 %>
Comercio Electrnico (EUITIO) Csar Acebal
11
12
13
URL Rewriting
Consiste en incluir la informacin del estado en el propio URL
//comprar.asp?paso=3&producto1=01992CX&produc to2=ZZ112230&producto3=HJ19X25
14
Ventajas e inconvenientes
Almacenar el estado de la sesin en el cliente presenta algunas ventajas frente a hacerlo en el servidor, pero tambin tiene algunos inconvenientes.
Ventajas
Menor uso de los recursos del servidor
Los servidores sin estado no necesitan reservar y mantener recursos para guardar el estado de la sesin
16
Inconvenientes
Privacidad
Otros servidores podran leer informacin almacenada en las cookies del cliente
No son vlidas para guardar nmeros de tarjeta, contraseas y cosas por el estilo
17
Inconvenientes
Implementacin compleja
Mantener a mano el estado en el cliente puede ser realmente complicado si queremos hacerlo de manera robusta
(Lo hemos visto con el ejemplo del sitio Web de cine en ASP)
18