解组具有未知字段名称的JSON

And*_*rew 3 json go

我有一个JSON对象,如下所示:

{
    "randomstring": {
        "everything": "here",
        "is": "known"
    }
}
Run Code Online (Sandbox Code Playgroud)

基本上randomstring对象内部的一切都是已知的,我可以对其进行建模,但是randomstring本身是随机的.我知道它会是什么,但每次都不一样.基本上我需要的所有数据都在randomstring对象中.我怎么能解析这种JSON来获取数据?

two*_*two 6

使用键类型所在的映射,string值类型是包含所需字段的结构,如Playground及以下示例中所示:

package main

import (
    "encoding/json"
    "fmt"
    "log"
)

type Item struct{ X int }

var x = []byte(`{
    "zbqnx": {"x": 3}
}`)

func main() {
    m := map[string]Item{}
    err := json.Unmarshal(x, &m)
    if err != nil {
        log.Fatal(err)
    }
    fmt.Println(m)
}
Run Code Online (Sandbox Code Playgroud)