jump to navigation

Acceder a las cookies con ASP Octubre 2, 2009

Publicado por lineadecodigo en : ASP , trackback

Las cookies son ficheros de información que van dejando las páginas web. En dicha información podemos encontrar múltiples cosas, unas veces información legible, otras encriptada, pero siempre relativa al usuario.

Solamente podremos acceder a cookies que hayan sido generadas en nuestro dominio. Es decir, nunca podremos acceder a la información de cookies de otra página web desde la nuestra. Es por ello que es un mecanismo con limitaciones de seguridad.

Si queremos acceder a las cookies con ASP lo primero que debemos de hacer es acceder a la colección que contiene las mismas. Esta colección se encuentra en el objeto Request y se llama Cookies. Debido a que la información sobre las cookies nos viene almacenada en una colección podemos aprovechar la secuencia de control for-each para recorrer dicha colección.

  1. for each item in Request.Cookies
  2. ...
  3. next

Las cookies pueden ser de dos tipos. Aquellas que solo tengan un par nombre/valor o las que sean una colección de pares nombre/valor. En el primer caso, el sencillo, nos valdrá con indicar el nombre de la cookie para obtener su valor.

  1. for each item in Request.Cookies
  2. Response.Write "
  3.  
  4. <strong>" + item + "</strong>:" + Request.Cookies(item) + "
  5.  
  6. "
  7. next

En los casos de que la cookie almacene un conjunto de parejas clave/atributo y si queremos desglosar esta información podemos utilizar el método .HasKeys el cual nos dice si la información es un valor o un conjunto de parejas clave/atributo.

Si no utilizamos el método .HasKeys nos devolverá información del tipo:

NORMAL=blue&ACTIVO=red&VISITADO=red

Si queremos desglosar esta información, volvemos a utilizar una estructura for-each:

  1. for each item in Request.Cookies
  2. if Request.Cookies(item).HasKeys then
  3. 'La cookie es una colección
  4. Response.Write("
  5.  
  6. La cookie <b>" + item
  7. + "</b> tiene un conjuno de parejas clave/atributo.")
  8. for each subitem in Request.Cookies(item)
  9. Response.Write "<br><strong>" + subitem + "</strong>:"
  10. + Request.Cookies(item)(subitem)
  11. next
  12. Response.Write("
  13.  
  14. ")
  15. end if
  16. next

Si no tenemos cookies generadas en nuestro servidor, para poder ejecutar este ejemplo puedes generar cookies al principio del fichero. Para ello utilizamos el objeto Response y su colección Cookies de la siguiente forma:

  1.  
  2. <%
  3. 'Mandamos una serie de cookies para probar el ejemplo
  4. Response.Cookies("musicaPreferida") = "pop"
  5. Response.Cookies("peliculaPreferida") = "Espartaco"
  6. Response.Cookies("musicaPreferida").expires = "12/12/2009"
  7.  
  8. Response.Cookies("enlace")("normal") = "blue"
  9. Response.Cookies("enlace")("visitado") = "red"
  10. Response.Cookies("enlace")("activo") = "red"
  11.  
  12. %>
  13. <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
  14. <html><body></body></html>
  15.  

Articulos Similares:

|- Descargar el código
|- Reportar error en el código
|- Foro sobre ASP

Enviar entrada por email Enviar entrada por email | Imprimir Imprimir | 1018 visitas

1 Star2 Stars3 Stars4 Stars5 Stars (Todavia sin evaluar)
Loading ... Loading ...

Comentarios»

Todavía no hay comentarios. ¿Quieres ser el primero?




Si tienes dudas sobre ASP no dudes en visitar el Foro sobre ASP.
Imagen CAPTCHA CAPTCHA Audio
Refrescar imagen