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

Comment puis-je gérer efficacement le JSON non structuré avec des clés arbitraires dans Go ?

Susan Sarandon
Libérer: 2024-11-27 09:36:11
original
603 Les gens l'ont consulté

How Can I Effectively Handle Unstructured JSON with Arbitrary Keys in Go?

Gestion du JSON non structuré avec des structures Go (duplicata)

Dans le contexte de la gestion des réponses JSON non structurées avec des clés arbitraires, il est possible de créer des Go structs pour s'adapter à cette structure de données dynamique.

Considérez le JSON fourni réponse :

{
  "items": [
    {
      "name": "thing",
      "image_urls": {
        "50x100": [
          {
            "url": "http://site.com/images/1/50x100.jpg",
            "width": 50,
            "height": 100
          },
          {
            "url": "http://site.com/images/2/50x100.jpg",
            "width": 50,
            "height": 100
          }
        ],
        "200x300": [
          {
            "url": "http://site.com/images/1/200x300.jpg",
            "width": 200,
            "height": 300
          }
        ],
        "400x520": [
          {
            "url": "http://site.com/images/1/400x520.jpg",
            "width": 400,
            "height": 520
          }
        ]
      }
    }
  ]
}
Copier après la connexion

Pour gérer ces données, une carte peut être utilisée pour représenter les clés arbitraires, comme suggéré par la réponse fournie :

type Items map[string][]ImageUrl
Copier après la connexion

Items est maintenant une structure Go avec une carte comme champ. Les clés de la carte représentent les tailles d'image dynamiques, tandis que les valeurs sont des listes de structures ImageUrl, représentant les métadonnées d'image individuelles.

Cette approche permet un accès facile aux images en fonction de leurs tailles. Par exemple, pour obtenir la liste des images pour "50x100" :

item := Items{"thing": {}}
item["50x100"]
Copier après la connexion

Cette approche fournit une solution flexible pour gérer les données JSON non structurées avec des clés arbitraires, vous permettant de les désorganiser directement dans les structures Go.

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
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal