使用动态键解组json

时间:2019-01-16 16:14:49

标签: json go struct unmarshalling

我收到一个json对象,该对象的键内部具有已知的静态结构,该结构在10个不同的值之间变化。

考虑lastname可以是10个姓氏列表中的任何一个:

var lastnames = [...]string { "Smith", "Johnson", "Williams", "Brown", "Jones", "Miller", "Davis", "Garcia", "Rodriguez", "Wilson" }

现在,json的外观如下:

{ 
  (lastname here): 
    {
        "position": value,
        "user_email": value
    }
}

我尝试使用以下结构将其解组,但我只得到空值:

type Inside struct {
    Rol   string   `json:"position"`
    Email   string   `json:"user_email"`
}

type Outside struct {
    Key Inside
}

...
var outside Outside
json.Unmarshal([]byte(body), &outside)

是否可以直接取消编组而不创建10个不同的结构?有可能的解决方法吗?

0 个答案:

没有答案