golang 怎么定义一个多维map

golang 怎么定义一个多维map

{ 

"loadbalancer": {

"name": "lb1",

"ips": ["192.168.1.1", "192.168.1.2"],

"tag": [

{"key": "name", "value": "test111"},

{"key": "Env", "value": "prod"}

]

},

"type": "internet"

}

我需要把上面的数据格式转成 json 当做调用其它API的参数,以前是写python的,在python中直接定义一个字典就行了。我在接收端直接使用 json.Unmarshal之后转成了这样的map map[loadbalancer:map[ips:[192.168.1.1 192.168.1.2] name:lb1 tag:[map[key:name value:test111] map[key:Env value:prod]]] type:internet] ,我客户端应该怎么定义这个数据结构,是应该自定义 struct,还是直接使用 map定义?


回答:

type Tag struct {

Key string `json:"key"`

Value string `json:"value"`

}

type Tmp struct {

Loadbalancer struct{

Name string `json:"name"`

Ips []string `json:"ips,omitempty"`

Tag []Tag `json:"tag"`

} `json:"loadbalancer"`

Type string `json:"type"`

}

var tmp Tmp

json.Unmarshal([]byte(str),&tmp)


回答:

给你个工具吧:
https://oktools.net/json2go

以上是 golang 怎么定义一个多维map 的全部内容, 来源链接: utcz.com/p/182566.html

回到顶部