在Golang的世界里,用encoding/json解析到对象要么用map[string]interface{},要么用struct。

当遇到嵌套层级多的json:

  1. 用map的方式需要做很多次断言
  2. 用struct需要定义很多个struct嵌套

Golang中可以定义临时结构体。如果不需要返回结构体而是得到json中的字段值,那么可以通过定义嵌套的结构体解析json。

例如:

这样,就可以解析三层json对象。而不需要定义多个struct

json: