示例
读写 JSON
ts
export default {
async fetch(request: Request, env: Env): Promise<Response> {
const url = new URL(request.url);
const key = url.pathname.slice(1) || "default";
if (request.method === "PUT") {
await env.KV.put(key, await request.text(), { expirationTtl: 86400 });
return new Response("ok");
}
const value = await env.KV.get(key);
return new Response(value ?? "missing", { status: value ? 200 : 404 });
},
} satisfies ExportedHandler<Env>;list + metadata
ts
const page = await env.KV.list({ prefix: "cfg:", limit: 20 });
for (const key of page.keys) {
const row = await env.KV.getWithMetadata(key.name, "json");
console.log(key.name, row.metadata, row.value);
}配置见上手。不提供 Cloudflare geolocation 或全球 purge。