我们知道,在 Go 语言中,有一种 map 数据类型,当我们需要向哈希表中存入不确定类型的数据时,我们可能会用到 map[string]interface{}
m1 := make(map[string]interface{}, 0)
m1["name"] = "user1"
m1["age"] = 21
m1["weight"] = 130.5
当向其中存储一些数据后,当我们遍历它,就能拿到自己想要的结果:
for k, v := range m1 {
fmt.Printf("%s-%s\n", k, v)
}
我们再看复杂一点的示例,服务 a,调用服务 b,获取用户信息。
服务 b 返回 json 给服务 a:{"name": "user1","userId":3,"orgId":202505060582035456}
// 服务 a 得到用户信息
// 经过服务内部的接口通讯,会对数据 json 序列化和反序列化:
json1 := `{"name": "user1","userId":3,"orgId":2025050605