cookie,通常用于记住用户登录信息,如:登录一个网站时记住密码的功能,就是通过cookie实现。cookie 的大小限制在 4k 以内,在客户端与服务器进行通信时,cookie 会被携带在 http 请求头中。cookie 中存放的字段有,过期时间、域名、路径等。
通过给 cookie 中的字段加上 HttpOnly 标识,可以禁止客户端通过 js 读写该字段。
子级域名可以获取到自身的 cookie 和顶级域名中的 cookie,不能访问其他子域名的 cookie。顶级域名不能获取子域名的 cookie。
如果 cookie 设定了超时时间,那么 cookie 将在到期的时候失效。若未设定,那么 cookie 就是会话(session)级别的。会话(session)级别的 cookie ,在标签页关闭或刷新时,cookie 仍存在,多个标签页的 cookie 属于同一个会话(session),浏览器退出时才会清空 cookie。
sessionStorage 和 localStorage 是 HTML5 新增的。它们的大小一般限制在 5M 以内,会因浏览器不同而有所差别。
sessionStorage 不同于 cookie,它的访问限制更高一些,只有当前设定 sessionStorage 的域才能访问它。刷新页面时,sessionStorage 仍存在,在关闭页面时 sessionStorage 会被清空。
localStorage 没有过期时间,若不被用户清理,会永久存在。只有当前设定 localStorage 的域才能访问它,与 sessionStorage 不同的是,localStorage 设定后,新开 tab 也是可以访问到的。
cookie、sessionStorage 、localStorage 都是存字符串类型的数据。
.
【1】http://caibaojian.com/localstorage-sessionstorage.html
【2】https://juejin.im/entry/578444c979bc440050a89fab
【3】http://www.cnblogs.com/polk6/p/5512979.html
【4】域名之间的cookie:https://segmentfault.com/a/1190000006932934