Maison > développement back-end > Golang > Golang plusieurs json

Golang plusieurs json

PHPz
Libérer: 2024-02-09 10:42:09
avant
919 Les gens l'ont consulté

Golang 多个 json

l'éditeur php Banana vous présentera comment traiter plusieurs JSON dans Golang. Dans Golang, nous devons souvent gérer plusieurs objets JSON. Par exemple, les données obtenues à partir de l'interface API peuvent être un tableau JSON. Pour faciliter la gestion de cette situation, nous pouvons utiliser le package JSON de Golang pour analyser et traiter plusieurs objets JSON. À l'aide du package JSON, nous pouvons analyser les données JSON en structures dans Golang, puis exploiter et traiter les structures. De cette façon, nous pouvons facilement gérer plusieurs objets JSON. Bien entendu, nous pouvons également utiliser certaines bibliothèques tierces, telles que GJSON, pour traiter plusieurs objets JSON de manière plus flexible et plus efficace. En général, Golang propose diverses façons de traiter plusieurs objets JSON, et les développeurs peuvent choisir la méthode appropriée en fonction de leurs propres besoins.

Contenu de la question

J'ai un json envoyé au client, il a 2 variantes, toute la différence est un nom de champ push/pull, comment puis-je faire cela sans dupliquer les balises struct pour une

"message": "Project updated successfully.",
        "data": {
            "push": {
                "projects": [
                    {
                        "name": "test",
                        "summary": "nn",
                    
                    }
                ],
                "events": []
            }
        }
    }
    "message": "Project updated successfully.",
        "data": {
            "pull": {
                "projects": [
                    {
                        "name": "test",
                        "summary": "nn",
                    
                    }
                ],
                "events": []
            }
        }
    }
Copier après la connexion

`

Je pense créer une interface de champ de date et remplacer une structure différente

Solution de contournement

Définissez simplement un seul type avec des champs Push et Pull :

type A struct {
    Message string `json:"message"`
    Data    struct {
        Push *B `json:"push,omitempty"`
        Pull *B `json:"pull,omitempty"`
    } `json:"data"`
}

type B struct {
    Projects []struct {
        Name    string `json:"name"`
        Summary string `json:"summary"`
    } `json:"projects"`
    Events []interface{} `json:"events"`
}
Copier après la connexion

Vérifiez zéro après le décodage pour déterminer quel type d'événement cela représente.

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!

Étiquettes associées:
source:stackoverflow.com
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