如何为Cloudflare Pages KV预填充键值以测试函数?
Cloudflare Pages KV预填充测试指南
本地开发环境预填充
方法1:用Wrangler CLI本地模拟KV
- 确保
wrangler.toml中已配置KV绑定,示例:[[kv_namespaces]] binding = "MY_KV" # 函数代码中调用的绑定名称 id = "线上命名空间ID" # 可留空或填测试值,本地用dev_id dev_id = "local-test-kv" # 本地模拟的KV命名空间标识 - 执行命令插入测试KV值:
wrangler kv:key put --binding=MY_KV "test-key" "test-value" --local - 启动本地开发服务器:
wrangler pages dev,函数即可读取预填充的本地KV数据。
方法2:代码层面模拟KV(单元测试场景)
直接在测试代码中模拟KV命名空间的get方法,预定义测试数据:
// 模拟KV实例 const mockKV = { get: async (key) => { const testDataset = { "user:demo": JSON.stringify({ name: "测试用户", id: 1 }), "app:config": "test-mode" }; return testDataset[key] || null; } }; // 测试函数时传入模拟的env const testResult = await yourFunction({ env: { MY_KV: mockKV } });
线上测试环境预填充
方法1:Wrangler CLI批量/单条插入
- 确认
wrangler.toml中的KV命名空间ID为线上真实ID(可在Cloudflare控制台的KV页面查看) - 执行命令插入测试值:
wrangler kv:key put --binding=MY_KV "prod-test-key" "prod-test-value" - 如需批量插入,可准备JSON文件(比如
kv-data.json),格式如下:
然后执行批量导入:[ { "key": "key1", "value": "value1" }, { "key": "key2", "value": "value2" } ]wrangler kv:bulk put --binding=MY_KV kv-data.json
方法2:Cloudflare控制台手动添加
- 登录Cloudflare控制台,进入你的Pages项目
- 左侧导航栏选择「Functions」→「KV命名空间」,找到对应的绑定命名空间
- 点击「添加键值对」,输入键名和值,保存后即可被线上函数读取。
内容的提问来源于stack exchange,提问作者Safa Alai
相关产品推荐
相关产品推荐

