Maison >développement back-end >Golang >Comment désorganiser JSON avec des clés dynamiques dans Go ?
Gestion dynamique des clés dans Viper/JSON Unmarshaling
Lorsque vous traitez des données JSON qui s'écartent d'un format prédéterminé, la désorganisation dans Go peut être difficile . Considérons un fichier de configuration JSON avec des clés dynamiques, tel que le suivant :
Pour regrouper ces données dans une structure Go avec des clés dynamiques, une approche consiste à utiliser une carte :
En utilisant map[string]Thing, la structure résultante peut gérer n'importe quel nombre de clés dynamiques. Désorganisez les données en utilisant :
Cette approche permet une désorganisation simple des clés dynamiques dans JSON et Viper (en utilisant viper.Get("things") pour obtenir un tableau de valeurs Thing).
Cependant, si la clé elle-même doit être membre de la structure, une boucle post-unmarshalling peut être utilisée pour mettre à jour la field :
Cela permet d'incorporer la clé dans la structure tout en préservant la nature dynamique d'origine des données JSON.
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!