Démarshaling de clé dynamique dans JSON avec Go
Lorsque vous travaillez avec des données JSON, il peut être difficile de les désorganiser dans une structure si l'un des Les clés sont dynamiques et ne peuvent pas être directement mappées à un nom de champ dans la structure. Pour résoudre ce problème, une solution pratique peut être trouvée dans Golang.
Étant donné une structure définie :
type X struct { A string `json:"a_known_string"` B string `json:"b_known_string"` }
Et un exemple de chaîne JSON :
{ "any string": { "a_known_string": "some value", "b_known_string": "another value" } }
Pour capturer à la fois la clé connue et la clé dynamique dans le JSON, une carte peut être utilisée :
var m map[string]X err := json.Unmarshal([]byte(jsnStr), &m)
Cette approche permet le stockage de plusieurs objets sous une seule clé dynamique, offrant une flexibilité dans la gestion des données.
Un exemple de terrain de jeu peut être trouvé [ici](https://play.golang.org/p/jh-GAlUEo7n).
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!