我有如下数据{ "cars": { "toyota": [ "sedan", "pickup" ], "honda": [ "sedan", "couple", "pickup" ] .... }}该列表可能会继续增长。我试图找到一个正确的结构来服务器数据并返回到 http 响应编写器。我拥有的结构。type Autos struct { Cars struct { Toyota []string `json:"toyota"` Honda []string `json:"honda"` } `json:"cars"`}但是上面的结构体已经预定义了“Toyota”“Honda”我正在寻找一种仅使用一个或两个结构来表示数据结构的方法。提前致谢。
1 回答
![?](http://img1.sycdn.imooc.com/5859e2d50001f6bb01000100-100-100.jpg)
qq_笑_17
TA贡献1818条经验 获得超7个赞
你可以做:
type Autos struct {
Cars map[string][]string `json:"cars"`
}
这是一个完整的工作示例,打印“coupe”:
package main
import (
"encoding/json"
)
type Autos struct {
Cars map[string][]string `json:"cars"`
}
func main() {
x := `{
"cars": {
"toyota": [
"sedan",
"pickup"
],
"honda": [
"sedan",
"coupe",
"pickup"
]
}
}`
var a Autos
err := json.Unmarshal([]byte(x), &a)
if err != nil {
panic(err)
}
println(a.Cars["honda"][1])
}
- 1 回答
- 0 关注
- 77 浏览
添加回答
举报
0/150
提交
取消