mcpField
E
edgeone-makers-storage

edgeone-makers-storage

github.com/tencentedgeone云与 DevOps1.8k250 次安装3 周前更新
代码仓库

关于 edgeone-makers-storage

为 EdgeOne Makers 提供 KV 与 Blob 存储指南,说明运行时限制、数据持久化方式及配置要求,适用于需要保存数据的项目。

主要功能

  1. 01KV 存储小型键值数据
  2. 02Blob 存储文件与结构化记录
  3. 03按运行时选择存储方案
  4. 04使用 Blob 键设计持久化模式

适用场景

  1. 01保存留言簿内容和投票
  2. 02存放用户上传文件及生成内容
  3. 03保存计数器、配置或会话令牌

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/tencentedgeone/edgeone-makers-tools --skill edgeone-makers-storage

安装后在 Claude Code 中输入/edgeone-makers-storage确认已加载。

附带文件references/blob.mdreferences/kv.md

详细介绍

EdgeOne Makers 存储

🗄️ 此平台没有托管数据库——没有 SQL、没有 MongoDB、没有 Prisma、没有 ORM。不要使用 sqlite、pg、mysql、mongodb 或内存数组(每次冷启动/重新部署都会重置)。Blob 就是你的数据库。 生成的网站需要持久化的任何动态数据——留言簿消息、上传的绘图、投票、排行榜、每位用户的保存状态、表单提交内容——都可以建模为 Blob 键。将“表”建模为键前缀(messages/<id>.json、users/<uid>.json)。参见 references/blob.md →“将 Blob 用作后端”。

⚠️ 本地开发并非总是需要登录。 edgeone makers dev 无需身份验证即可运行纯静态预览。只有在以下情况下才需要登录:使用 Blob ⇒ 项目必须先 link ⇒ 链接项目前必须先登录账号。 因此,只有(且仅有)在开发/部署必须读写 Blob(或任何需要凭据的后端)时,才运行 edgeone login(浏览器)或在链接/启动开发服务前传入 -t <token>。如果网站没有后端,跳过登录,直接运行 edgeone makers dev。 另请参阅 makers-env-adaption(登录身份验证 + 项目链接)。

⛔ 项目使用 Blob/KV 时,始终为 edgeone makers dev 传入 -n <project-name>。 不带参数运行 edgeone makers dev 会进入交互式的“链接现有项目/创建并链接”选择器,在沙盒/非交互环境中会卡住。使用 -n 时,如果指定名称的项目尚不存在,CLI 会自动创建项目——只需一条命令,无需单独执行其他步骤。

🔒 每个 Blob 存储都必须使用:getStore({ name, consistency: "strong" })——不要使用字符串形式 getStore("name")。 字符串形式默认采用最终一致性,会导致“刚写入,但下一次读取却返回旧值/null”的问题。完整规则及原因: references/blob.md → 文件顶部的 IRON RULE。

EdgeOne Makers 提供两种存储服务。请根据运行时和数据类型进行选择:

存储运行时数据类型SDK使用场景
KV仅 Edge Functions小型键值对(≤ 25 MB)全局变量(无需 npm)计数器、配置、会话令牌、简单的 CRUD
BlobCloud Functions(Makers Functions)文件和对象(图像、文档、上传内容)@edgeone/pages-blob(npm)用户上传内容、AI 生成的内容、文件管理

决策树

Need to persist anything (records, lists, counters, uploads, save state)?
├─ Edge Function (V8 runtime, no npm)?
│   → KV Storage (global variable)           → read references/kv.md
└─ Cloud Function (Node.js, has npm)?  ← default for any real backend
    ├─ Files / images / large objects?
    │   → Blob Storage                       → read references/blob.md
    └─ Structured data (records, lists, counters, per-user state)?
        → Blob with setJSON / key prefixes   → read references/blob.md

路由

任务阅读
KV 存储(Edge Functions、全局变量、put/get/delete/list)references/kv.md
Blob 存储(Cloud Functions、npm SDK、文件上传/下载、预签名 URL)references/blob.md

评论

支持 Markdown