如何使用golang etcd客户端创建目录节点?

How to create a directory node using the golang etcd client?

我希望在 json 中有这样的结构:

{
"a":["b":1, "c":2],
"x":["y":3, "z":4]
}

我可以使用 "a" 和 "x" 作为目录并在它们下面有节点来存储数据。我在文档或如何完成此操作的示例中找不到它。

编辑:我刚刚通过为 Set 调用 /a/b、/a/c、/x/y 和 /x/z 将其创建为目录。这创建了必要的结构,但我正在寻找一个简化版本来做同样的事情,而不是 4 个 etcd 调用。

创建目录

etcdctl mkdir <my_dir>

做你想做的,有这个选项:

etcdctl set myobject '{"a":["b":1, "c":2],"x":["y":3, "z":4]}'

会将 json 保存为一个对象,您可以在一次调用中拉回该对象(使用 get

键是一个字符串,值是一个字符串:所以你可以放任何你想要的东西,只要它是一个字符串...所以 JSON 是一个字符串,你可以把你的 json 字符串像其他任何东西一样。

当您需要它时,您可以拉取 json 字符串并解析它。