Maison > développement back-end > Golang > le corps du texte

Comment accéder aux valeurs JSON profondément imbriquées dans Go ?

DDD
Libérer: 2024-10-27 01:54:03
original
655 Les gens l'ont consulté

How to Access Deeply Nested JSON Values in Go?

Accès aux valeurs JSON profondément imbriquées dans Go

Dans Go, la gestion de structures JSON complexes peut être difficile en raison de la nature dynamique du type d'interface . Pour les clés et valeurs JSON profondément imbriquées, considérez que le package « github.com/bitly/go-simplejson » propose une approche plus simple.

Pour utiliser go-simplejson, installez le package en utilisant :

<code class="bash">go get github.com/bitly/go-simplejson</code>
Copier après la connexion

Avec ce package, vous pouvez accéder à des valeurs JSON profondément imbriquées à l'aide des méthodes Get et GetIndex. Par exemple, pour récupérer le paramètre "time" du JSON fourni :

<code class="go">json, err := simplejson.NewJson([]byte(msg))
if err != nil {
    panic(err)
}

time, _ := json.Get("args").GetIndex(0).Get("time").String()
log.Println(time)</code>
Copier après la connexion

Pour déclarer des structures de type pour des structures de données complexes, vous pouvez utiliser le package "encoding/json". Par exemple, la structure suivante représente le message JSON :

<code class="go">type Message struct {
   Name  string                 `json:"name"`
   Args  []map[string]interface{} `json:"args"`
}</code>
Copier après la connexion

Vous pouvez ensuite désorganiser le message JSON dans cette structure :

<code class="go">m := Message{}
if err := json.Unmarshal([]byte(msg), &m); err != nil {
    panic(err)
}</code>
Copier après la connexion

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!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!