探索客户端数据库:IndexedDB 详解
1. 客户端数据库概述
传统的 Web 应用架构中,客户端使用 HTML、CSS 和 JavaScript,而数据库则部署在服务器端。然而,HTML5 引入了令人惊喜的客户端数据库 API,这些数据库并非仅仅是通过网络访问数据库服务器的客户端 API,而是实际存储在用户计算机上,并可由浏览器中的 JavaScript 代码直接访问的客户端数据库。
1.1 常见客户端数据库类型
- Web Storage API :可视为一种简单的数据库,用于持久化存储简单的键值对。
- Web SQL Database :是一种简单的关系型数据库,支持基本的 SQL 查询。不过,只有 Chrome、Safari 和 Opera 实现了该 API,Firefox 和 IE 未实现且可能永远不会实现,该 API 的官方规范工作已停止,不太可能成为官方标准或网络平台的通用特性。
- IndexedDB :目前标准化工作聚焦的数据库 API,Firefox 4 和 Chrome 11 已包含其实现。它是一种对象数据库,而非关系型数据库,比支持 SQL 查询的数据库更简单,且比 Web Storage API 提供的键值存储更强大、高效和健壮。
1.2 IndexedDB 特点
- 作用域 :与 Web Storage 和 Filesystem API 一样,IndexedDB 数据库的作用域