0
Posted on 15:46:00 by Unknown and filed under
HTML5
可以访问本文镜像。
为什么要引入本地存储
这个问题也是在做 Web App 的时候自然注意到,HTTP 的传输是无状态的(stateless),所以为了给用户个性化体验就必须在客户端存储一些数据。比如,网站的登录过程,事实上就是利用 Cookie 在客户端保存了用户的验证信息,在用户每一次发送 Request 的时候都会在 Header 部分加入 cookie 的信息,从而让网站服务器得知用户已经登录,并提供用户所需的信息。
Cookie 的缺点
Cookie 已经实现了在客户端储存资料,不过它有几点不足:
- Cookie 的设计限制了大小为 4KB;
- Cookie 每次 HTTP Request 都要传输一遍,并且通常不加密传输(可以使用 SSL 加密);
- Cookie 通常存储了用户的浏览行为和隐私相关的信息,有可能造成安全隐患。
快速入门
如今知名的浏览器都已经支持了 HTML5 Storage,不过对国内来说 IE 的版本才是最大的问题(IE8 以上才支持)。并且包括 iPhone 和 Android 在内的手机浏览器也支持。
以下文章可以快速了解 HTML5 Storage 的特性和用法:
- HTML5 Web Storage, Using localStorage and sessionStorage Objects
- HTML5 Local Storage – Complete Guide
localStorage 和 sessionStorage
localStorage 可以认为不主动清除则一直存在。
sessionStorage 则是和会话相关,刷新页面不会清除,但是关闭浏览器则会清除。所以浏览器崩溃后,通常 sessionStorage 还可以存在。
发表评论