Programación Avanzada en Java

Page 117

Usar Cookies en servlets LAs cookies HTTP son exencialmente cabeceras HTTP personalizadas que son pasadas entre el cliente y el servidor. Aunque las cookies no son muy populares, permiten que el estado sea compartido entre dos máquinas. Por ejemplo, cuando un usuario hace login en una site, una cookie puede mantener una referencia verificando que el usuario ha pasado el chequeo de password y puede usar esta referencia para identificar al mismo usuario en futuras visitas. Las cookies normalmente están asociadas con un servidor. Si configuramos el dominio a .java.sun.com, entonces la cookies está asociada con ese dominio. Si no se configura nignún dominio, la cookie sólo está asociada con el servidor que creó la cookie. Configurar una Cookie El API Servlet de Java incluye una clase Cookie que podemos usar para configurar o recuperar la cookie desde la cabecera HTTP. Las cookies HTTP incluyen un nombre y una pareja de valores. El método startSession mostrado aquí está en el programa LoginServlet. En este método, el nombre en la pareja nombre valor usado para crea el Cookie es JDCAUCTION, y un identificador único generado por el servidor es el valor. protected Session startSession(String theuser, String password, HttpServletResponse response) { Session session = null; if ( verifyPassword(theuser, password) ) { // Create a session session = new Session (theuser); session.setExpires (sessionTimeout + i System.currentTimeMillis()); sessionCache.put (session); // Create a client cookie Cookie c = new Cookie("JDCAUCTION", String.valueOf(session.getId())); c.setPath ("/"); c.setMaxAge (-1); c.setDomain (domain); response.addCookie (c); } return session; } Versiones posteriores del API Servlet incluye un API Session, para crear una sesión


Issuu converts static files into: digital portfolios, online yearbooks, online catalogs, digital photo albums and more. Sign up and create your flipbook.