Cloudflare KV
CloudflareのKey Valueストア。
wranglerでの操作
$ wrangler kv:namespace create "MY_KV"
MY_KVというネームスペースのストアを作成。
$ wrangler kv:key put --binding=MY_KV "test" "0"
MY_KVに対して、keyが"test"でvalueが"0"を登録。
$ wrangler kv:key get --binding=MY_KV "test"
MY_KVに対して、keyが"test"のものを取得。
Cloudflare workerからKVを利用する
$ wrangler init
でhello worldのworkerを作成。
下記で、MY_KVのストアにkey名:last_access_timeに対して、valueに現在時間を登録するworkerができる。
code: wrangler.toml
name=""
kv_namespaces
binding = "MY_KV"
id = "xxxxxxxxxxxxxxxxxxxxx"
code: index.ts
export interface Env {
MY_KV: KVNamespace;
}
export default {
async fetch(request: Request, env: Env, ctx: ExecutionContext): Promise<Response> {
// 現在時間
const now = new Date().toISOString();
await env.MY_KV.put("last_access_time", now);
const value = await env.MY_KV.get("last_access_time");
if(value === null) {
return new Response("Value not found", { status: 404 })
}
return new Response(Last access time set to KV: ${value});
},
};
$ wrangler dev
でローカル環境で実行。
$ wrangler deploy
で本番にデプロイ。