使用 Go 在 JSON 中进行动态键解组
使用 JSON 数据时,如果满足以下条件之一,则将其解组为结构体可能会很困难:键是动态的,不能直接映射到结构中的字段名称。为了解决这个问题,可以在 Golang 中找到一个实用的解决方案。
给定一个定义的结构体:
type X struct { A string `json:"a_known_string"` B string `json:"b_known_string"` }
和一个示例 JSON 字符串:
{ "any string": { "a_known_string": "some value", "b_known_string": "another value" } }
来捕获JSON 中的已知键和动态键都可以使用映射:
var m map[string]X err := json.Unmarshal([]byte(jsnStr), &m)
此方法允许在单个动态键下存储多个对象,提供数据处理的灵活性。
可以在[此处](https://play.golang.org/p/jh-GAlUEo7n)找到示例游乐场。
以上是如何在 Go 中使用动态键解组 JSON?的详细内容。更多信息请关注PHP中文网其他相关文章!