让数据留下来。
D1 是 Cloudflare 托管的数据库。
把任务等数据存进云端的表,网页关闭后,数据仍然存在。
网页展示数据
→
Worker查询数据
→
D1保存数据
一张表,一条记录。
一行是一条任务,一列是一个字段。
| 编号 | 任务标题 |
|---|---|
| 正在读取云端记录… | |
连接 D1…
试着刷新页面,或用另一台设备打开这个网址。
读到的是同一条云端记录,网页本身没有保存它。
记住这句话:Worker 做事,D1 记住结果。
想知道这条数据是怎么写入、读出的?
这条样例已从管理端写入真实 D1。网页只读它;应用要新增或修改记录,也是让 Worker 执行 SQL。
SQL 是操作表的语言。这两句分别是“保存一条任务”和“查出这条任务”:
INSERT INTO tasks (id, title)
VALUES ('1', '理解 D1 如何保存数据');
SELECT id, title FROM tasks WHERE id = '1';
实际 Worker 使用 DB 绑定和参数化查询;接口返回 no-store,每次读取都查询数据库。此页没有使用 localStorage,也没有把任务写死在网页里。
以前的回显接口只处理输入、返回 saved:false。D1 提供存储,但代码必须执行写入操作,数据才会被保存。