介绍
1.cookie又叫会话跟踪技术,是由web服务器保存在用户浏览器上的小文本文件,它可以记录用户ID、密码、浏览过的网页、停留的时间等信息。当用户再次来到该网站时,网站通过读取cookie,得知用户相关信息,如果用户清理了cookie,那么用户曾登录过的网站信息就没有了。
2.sessionStorage和localStorage是H5新增的本地存储
区别
1.存储大小的不同
localStorage的大小一般为5M
sessionStorage的大小一般为5M
cookies的大小一般为4K
2.有效期不同:
localStorage的有效期为永久有效,除非你进行手动删除。
sessionStorage在当前会话下有效,关闭页面或者浏览器时会被清空。
cookies在设置的有效之前有效,当超过有效期便会失效。
3.与服务器端的通信
localStorage不参与服务器端的通信。
sessionStorage不参与服务器端的通信。
cookies参与服务器端通信,每次都会携带http的头信息中。(如果使用cookie保存过多数据会带来性能问题)
应用场景
1.因为考虑到每个 HTTP 请求都会带着 Cookie 的信息,比较常用的一个应用场景就是判断用户是否登录。针对登录过的用户,服务器端会在他登录时往 Cookie 中插入一段加密过的唯一辨识单一用户的辨识码,下次只要读取这个值就可以判断当前用户是否登录啦。曾经还使用 Cookie 来保存用户在电商网站的购物车信息,如今有了 localStorage,现在基本更加方便
2.sessionStorage:
可以用来统计当前页面元素的点击次数。
3.localStoragese:
常用于长期登录(判断用户是否已登录),适合长期保存在本地的数据。sessionStorage:敏感账号一次性登录;
登陆信息用cookie好还是localStorage好?
1.建议登陆信息用 cookie。即设置过期时间的cookie,看法是 cookie 默认会发送回到后端,这样方便后端读取,而使用localStorage,你需要在每次请求的时候,都手动带上这个信息,这大大增加了开发过程中带来的困难,非常麻烦,而且还要手动维护过期时间。
2.cookie有时效,而localStorage如果不手动清理则永久保存。
3.如果要设置关闭网页/标签就失效,请用SessionStorage。 这个类似你设置“不带时间的cookie”。