❑ cookie
❑ 浏览器存储API
❑ IndexedDB
随着Web应用程序的出现,直接在客户端存储用户信息的需求也随之出现。
这背后的想法是合理的:与特定用户相关的信息应保存在用户的机器上。
无论是登录信息、个人偏好,还是其他数据,Web应用程序提供者都需要有办法把它们保存在客户端。
对该问题的第一个解决方案就是cookie, cookie由古老的网景公司发明,由一份名为Persistent Client State: HTTP Cookies的规范定义。今天,cookie只是在客户端存储数据的一个选项。
Web Storage定义了两个对象用于存储数据:
sessionStorage和localStorage。
前者用于严格保存浏览器一次会话期间的数据,因为数据会在浏览器关闭时被删除。
后者用于会话之外持久保存数据。
IndexedDB是类似于SQL数据库的结构化数据存储机制。
不同的是:IndexedDB存储的是对象,而不是数据表。
对象存储是通过定义键然后添加数据来创建的。
游标用于查询对象存储中的特定数据,而索引可以针对特定属性实现更快的查询。
有了这些存储手段,就可以在客户端通过使用JavaScript存储可观的数据。
因为这些数据没有加密,所以要注意不能使用它们存储敏感信息。
