如何使用无法在结构中捕获为`json`的动态密钥解组jSON:GOlang

How to Unmarshal jSON with dynamic key which can't be captured as a `json` in struct: GOlang

我定义了这个结构:

type X struct {
 A string `json:"a_known_string"`
 B string `json:"b_known_string"`
}

这个样本JSON:

jsnStr := [从文件中读入并打印出来确认]

是:

{
 "any string" : {
   "a_known_string" : "some value",
   "b_known_string" : "another value" 
 }
}

如果只是结构,我可以:

var x X
err := json.Unmarshal(jsnStr, &x)

但我需要捕捉那个 'any string'。 请问我该怎么做?

使用地图:

var m map[string]X
err := json.Unmarshal([]byte(jsnStr), &m)

playground example