Cookies: Uso en JavaScript

4,258 views

Published on

Vídeo de la presentación: http://www.youtube.com/watch?v=i__IbhyrB28

Cookies: ¿Cómo se usan en JavaScript?
Uso de las cookies en JavaScript: document.cookie, atributos de una cookie, setCookie(), getCookie(), escape(), unescape()

Más información:
- http://accesibilidadweb.dlsi.ua.es
- http://desarrolloweb.dlsi.ua.es
Autor: Sergio Luján Mora, profesor de la Universidad de Alicante (http://www.ua.es)

Published in: Education
2 Comments
0 Likes
Statistics
Notes
  • Be the first to like this

No Downloads
Views
Total views
4,258
On SlideShare
0
From Embeds
0
Number of Embeds
2
Actions
Shares
0
Downloads
0
Comments
2
Likes
0
Embeds 0
No embeds

No notes for slide

Cookies: Uso en JavaScript

  1. 1. Cookies: Uso en JavaScript Sergio Luján Mora sergio.lujan@ua.esCook-03
  2. 2. Vídeo de esta presentación Puedes ver esta presentación en vídeo:http://www.youtube.com/watch?v=i__IbhyrB28
  3. 3. La información se almacena a petición delservidor web:-Directamente desde la propia página webcon JavaScript document.cookie-Desde el servidor web mediante lascabeceras HTTP PHP: setcookie() y $_COOKIE
  4. 4. Una pareja nombre/valorUn dominioUna rutaUna fecha de caducidad o máxima edadUna marca de sólo conexión seguraUna marca de sólo HTTP
  5. 5. document.cookie: – Define, modifica o borra una cookie si ya existe – Devuelve todas las cookies de la página actual – El acceso no es directo, ya que devuelve una única cadena que contiene todas las cookies de la página (separadas por “;”) – Para acceder a una cookie concreta, es necesario analizar la cadena para localizar su valor
  6. 6. javascript:alert(document.cookie)
  7. 7. javascript:alert(document.cookie)
  8. 8. document.cookie
  9. 9. setCookie() recibe tres parámetros: – El nombre de la cookie (c_name) – El valor de la cookie (value) – La fecha de caducidad como el número de días a partir de la fecha actual (expiredays)
  10. 10. function setCookie(c_name, value, expiredays) { var exdate = new Date(); exdate.setDate(exdate.getDate() + expiredays); document.cookie = c_name + "=" + escape(value) + ((expiredays == null) ? "" : ";expires="+ exdate.toUTCString());}
  11. 11. getCookie(): – Recibe sólo un parámetro, el nombre de la cookie que se quiere recuperar (c_name)
  12. 12. function getCookie(c_name) { if(document.cookie.length > 0) { c_start = document.cookie.indexOf(c_name + "="); if(c_start != -1) { c_start = c_start + c_name.length + 1; c_end = document.cookie.indexOf(";", c_start); if(c_end == -1) c_end = document.cookie.length; return unescape(document.cookie.substring(c_start, c_end)); } } return "";}
  13. 13. Para borrar una cookie, se tiene que asignar a la cookie una fecha de caducidad (expires) en el pasado:setCookie("nombre", "", -1);
  14. 14. function setCookie(c_name, value, expiredays) { var exdate = new Date(); exdate.setDate(exdate.getDate() + expiredays); document.cookie = c_name + "=" + escape(value) + ((expiredays == null) ? "" : ";expires="+ exdate.toUTCString());}
  15. 15. function getCookie(c_name) { if(document.cookie.length > 0) { c_start = document.cookie.indexOf(c_name + "="); if(c_start != -1) { c_start = c_start + c_name.length + 1; c_end = document.cookie.indexOf(";", c_start); if(c_end == -1) c_end = document.cookie.length; return unescape(document.cookie.substring(c_start, c_end)); } } return "";}
  16. 16. Sergio Luján Mora; Alicante escape()Sergio%20Luj%E1n%20Mora%3B%20Alicante unescape() Sergio Luján Mora; Alicante
  17. 17. prueba.htmlcookies.jsejemplo.js
  18. 18. <!DOCTYPE html><html><head><meta charset="utf-8" /><title>Prueba de JavaScript</title><script src="cookies.js"></script></head><body><p><script src="ejemplo.js"></script></p></body></html>
  19. 19. var ahora = new Date();var registro = getCookie("registro");if(registro != "") { var arrayRegistro = registro.split("|"); for(i = 0; i < arrayRegistro.length; i++) document.write(arrayRegistro[i] + "<br />"); registro += "|";}setCookie("registro", registro + ahora.toUTCString(), 365);
  20. 20. Sun%2C%2030%20Oct%202011%2016%3A09%3A17%20GMT%7CSun%2C%2030%20Oct%202011%2016%3A10%3A42%20GMT unescape() Sun, 30 Oct 2011 16:09:17 GMT|Sun, 30 Oct 2011 16:10:42 GMT
  21. 21. Más información:http://accesibilidadweb.dlsi.ua.es/ http://desarrolloweb.dlsi.ua.es/ sergio.lujan@ua.es
  22. 22. Créditos de fotografías e imágenes:http://www.sxc.hu/photo/1282932http://www.sxc.hu/photo/1334872

×