跳转到内容
搜索文档

KV

最后更新 查看 MarkdownAgent 设置

命名空间 (Namespaces)

按如下方式指定添加到你环境中的 KV 命名空间:

const mf = new Miniflare({
	kvNamespaces: ["TEST_NAMESPACE1", "TEST_NAMESPACE2"],
});

你现在可以在 Workers 中访问 KV 命名空间:

export default {
	async fetch(request, env) {
		return new Response(await env.TEST_NAMESPACE1.get("key"));
	},
};

Miniflare 支持所有 KV 操作和数据类型。

在 Workers 外部操作

为了进行测试,在 Worker 外部向 KV 写入/获取数据很有用。你可以使用 getKVNamespace 方法来实现这一点:

import { Miniflare } from "miniflare";

const mf = new Miniflare({
	modules: true,
	script: `
  export default {
    async fetch(request, env, ctx) {
      const value = parseInt(await env.TEST_NAMESPACE.get("count")) + 1;
      await env.TEST_NAMESPACE.put("count", value.toString());
      return new Response(value.toString());
    },
  }
  `,
	kvNamespaces: ["TEST_NAMESPACE"],
});

const ns = await mf.getKVNamespace("TEST_NAMESPACE");
await ns.put("count", "1");

const res = await mf.dispatchFetch("http://localhost:8787/");
console.log(await res.text()); // 2
console.log(await ns.get("count")); // 2

这篇文档对您有帮助吗?