json - 如何在 Go 中解析以下 JSON 结构

标签 json parsing go

在 Go 中,我如何解析以下 JSON? 我知道使用 struct 来解析,但是每个条目的键是不同的,而且它们不是固定的,它们可以或多或少。

{
  "consul": [],
  "docker": [],
  "etcd": ["etcd"],
  "kubernetes": ["secure"],
  "mantl-api": [],
  "marathon": ["marathon"],
  "mesos": ["agent", "follower", "leader", "master"],
  "mesos-consul": [],
  "zookeeper": ["mantl"]
}

感谢您的帮助!

最佳答案

如果 json 值总是 []string 你可以用

转换它
json.Unmarshal(value, &map[string][]string)

但如果没有,最好的方法是在 map[string]interface{} 中解码 JSON 并检查您想要的每个字段类型。

关于json - 如何在 Go 中解析以下 JSON 结构,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38340990/

相关文章:

php - Javascript xmlhttp - 获取 JSON 中变量的名称

ruby - 在 Ruby 中解析文本文件和排序?

go - 定义顶级 Go 模板

go - go 如何计算映射中键的哈希值?

ajax - 在 golang 中提供多个静态文件并发出 post 请求

c# - 将 JSON 反序列化为对象,然后运行 ​​foreach 循环以添加到 ListView 中

javascript - 如何操作我们在golang中发送和接收的数据

parsing - 标称 5 : creating a combinator using another parser multiple times

javascript - 如何在 Javascript 对象中引用 JSON 集作为键

c++ - 如何在 Spirit X3 中正确指定锚定条件?