Golang mehrere JSON

PHPz
Freigeben: 2024-02-09 10:42:09
nach vorne
873 Leute haben es durchsucht

Golang 多个 json

php-Editor Banana zeigt Ihnen, wie Sie mehrere JSONs in Golang verarbeiten. In Golang müssen wir häufig mehrere JSON-Objekte verarbeiten. Beispielsweise können die von der API-Schnittstelle erhaltenen Daten ein JSON-Array sein. Um den Umgang mit dieser Situation zu erleichtern, können wir das JSON-Paket von Golang verwenden, um mehrere JSON-Objekte zu analysieren und zu verarbeiten. Mit dem JSON-Paket können wir JSON-Daten in Golang in Strukturen analysieren und die Strukturen dann bedienen und verarbeiten. Auf diese Weise können wir problemlos mehrere JSON-Objekte verarbeiten. Natürlich können wir auch einige Bibliotheken von Drittanbietern wie GJSON verwenden, um mehrere JSON-Objekte flexibler und effizienter zu verarbeiten. Im Allgemeinen bietet Golang verschiedene Möglichkeiten zur Verarbeitung mehrerer JSON-Objekte, und Entwickler können die geeignete Methode entsprechend ihren eigenen Anforderungen auswählen.

Frageninhalt

Ich habe ein JSON an den Client gesendet, es hat 2 Varianten, der einzige Unterschied ist ein Feldnamen-Push/Pull, wie kann ich das machen, ohne die Struktur-Tags für eine zu duplizieren

"message": "Project updated successfully.",
        "data": {
            "push": {
                "projects": [
                    {
                        "name": "test",
                        "summary": "nn",
                    
                    }
                ],
                "events": []
            }
        }
    }
    "message": "Project updated successfully.",
        "data": {
            "pull": {
                "projects": [
                    {
                        "name": "test",
                        "summary": "nn",
                    
                    }
                ],
                "events": []
            }
        }
    }
Nach dem Login kopieren

`

Ich denke darüber nach, eine Datumsfeldschnittstelle zu erstellen und eine andere Struktur zu ersetzen.

Problemumgehung

Definieren Sie einfach einen einzelnen Typ mit Push- und Pull-Feldern:

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"`
}
Nach dem Login kopieren

Überprüfen Sie Null nach der Dekodierung, um festzustellen, um welche Art von Ereignis es sich handelt.

Das obige ist der detaillierte Inhalt vonGolang mehrere JSON. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:stackoverflow.com
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!