storage

文章目录

浏览器的储存主要包括:cookielocalStoragesessionStorageindexDB

Storage

cookie已经不建议用于存储。

  • 生命周期: 一般由服务器生成,可以设置过期时间
  • 每次网络请求都会附加在header中
  • 大小一般为4K

安全选项:

  • value:用于保存才能用户的登录状态,该值应该加密,不能使用明文标识
  • http-only:不能通过js访问cookie,减少XSS攻击
  • secure:只能用于https
  • same-site:规定浏览器不能在跨域请求中携带cookie,减少CSRF

localStorage

  • 生命周期:除非被清理,否则一直在
  • 大小一般为5M
  • 同步操作

sessionStorage

  • 生命周期:页面(Tab)被关闭就清理
  • 大小一般为5M
  • 同步操作

indexDB

  • 生命周期:除非被清理,否则一直在
  • 大小无限
  • 异步操作
  • 受到同源策略的影响

Web SQL

Web SQL 数据库 API 并不是 HTML5 规范的一部分,但是它是一个独立的规范,引入了一组使用 SQL 操作客户端数据库的 APIs。
核心方法:

  • openDatabase:这个方法使用现有的数据库或者新建的数据库创建一个数据库对象。
  • transaction:这个方法让我们能够控制一个事务,以及基于这种情况执行提交或者回滚。
  • executeSql:这个方法用于执行实际的 SQL 查询。
分享到: