博客
关于我
Local Storage,Session Storage,IndexedDB,Web SQL,Cookies简介
阅读量:534 次
发布时间:2019-03-08

本文共 1240 字,大约阅读时间需要 4 分钟。

一、概述

Local Storage、Session Storage、IndexedDB 和 Web SQL 是浏览器中常用的前端本地存储技术。需要注意的是,Web SQL 已经被废弃,HTML5 的本地存储主要通过 Local Storage 和 Session Storage 实现。Web Storage 使用简单的键值对存储数据,灵活且方便,但对于大量结构化数据的存储较为困难。为了更高效地管理和检索结构化数据,IndexedDB 是一个理想的选择。

二、Cookie

Cookie 是一种小型的本地数据存储技术,主要用于浏览器和服务器之间的通信。其特点包括:

  • 数据在每次 HTTP 请求中携带,占用一定的流量
  • 可设置路径、域名和过期时间
  • 大小限制为 4KB 左右
  • 数据在关闭浏览器后仍然有效

Cookie 通常用于用户身份认证、购物车功能等场景,但由于其明文传输的特点,存在一定的安全隐患。

三、Local Storage 和 Session Storage

Local Storage 和 Session Storage 是 HTML5 中新增的本地存储 API,主要用于客户端的本地数据存储。

  • Local Storage:数据可以永久保存,除非用户显式清除。适合持久化数据存储,可在所有同源窗口中共享,支持存储至多 5MB 的数据。
  • Session Storage:数据仅在当前会话有效,会话结束后数据会被清除。适合会话级别存储,不支持跨窗口共享,同样可存储至多 5MB 的数据。

四、Cookie 与 Local Storage 与 Session Storage 比较

特性 Cookie Local Storage Session Storage
数据生命期 可设置失效时间,默认关闭浏览器后失效 除非显式清除,否则永久保存 会话级存储,会话结束后清除
存储数据大小 4KB 左右 5MB 左右 5MB 左右
与服务器通信 每次 HTTP 请求携带 不参与服务器通信 不参与服务器通信
易用性 接口较友好,开发者封装后使用方便 接口良好,支持 Object 和 Array 接口良好,支持 Object 和 Array
应用场景 用户登录认证、购物车功能 本地游戏数据存储、购物车替代 表单页拆分、用户体验优化
注意事项 不推荐存储敏感数据 不推荐存储敏感数据 不推荐存储敏感数据

五、IndexedDB

IndexedDB 是一个基于对象仓库的非关系型数据库,适用于存储大量结构化数据。其特点包括:

  • 键值对存储:支持直接存储 JavaScript 对象,主键唯一性要求。
  • 异步操作:不会锁死浏览器,提升用户体验。
  • 支持事务:确保数据一致性,避免部分写入。
  • 同源限制:只能访问当前域名下的数据库。
  • 存储空间大:通常不少于 250MB。
  • 二进制存储支持:可存储 ArrayBuffer 和 Blob 数据。

通过以上技术,我们可以根据不同需求选择合适的存储方案。

转载地址:http://zgsiz.baihongyu.com/

你可能感兴趣的文章
python协程实时输出_Python 协程以及事件循环的问题,怎么知道 IO 读取结束了呢?...
查看>>
Python十进制&;包提供错误的结果
查看>>
Python化身“安全老中医”:一键搞定工控系统漏洞,从零基础到精通,收藏这篇就够了!
查看>>
Python加速运行技巧
查看>>
python办公自动化基础遍历文件夹
查看>>
python办公自动化基础输出文件和文件夹
查看>>
python办公自动化基础搜索文件
查看>>
python知识:@classmethod和@staticmethod的异同
查看>>
python前端之css
查看>>
Python制作进度条,原来有这么多方法
查看>>
Python制作简单的学生成绩管理系统
查看>>
python制作甘特图的基本知识(附Demo)
查看>>
python制作一个简单的服务器,【Python】 做一个简单的 http 服务器
查看>>
Python到底能做什么?它的优点在哪?
查看>>
python利用pytorch库导出图像分割算子
查看>>
python利用pyshark监听网卡来抓包其中pyshark中摸索的一些可用参数
查看>>
python利用excel分析过杀漏失
查看>>
python判断汉字数目
查看>>
python判断文件是空的,如果是空的,就删除
查看>>
python判断密码是否正确_python密码判断是否符合要求的方法
查看>>