Heim >Backend-Entwicklung >Golang >So entmarshalieren Sie JSON mit unbekannten Feldern und Schlüsseln

So entmarshalieren Sie JSON mit unbekannten Feldern und Schlüsseln

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBnach vorne
2024-02-06 10:33:11762Durchsuche

如何使用未知字段和键解组 json

Frageninhalt

Vom Frontend habe ich dieses JSON-Beispiel erhalten:

{
  "properties":{"unknown key": "unknown value","unknown key2": "unknown value 2"}
}

Ich habe angefangen, es mit map[string]interface{} zu analysieren, aber es funktioniert nicht. Ich weiß auch nicht, wie viel ich in diesem Bereich gewinnen kann. Kann 10 oder 1 sein.

Code:

type test struct {
    p map[string]string `json:"properties"`
}

func main() {
    var t test

    body := `
    {
        "properties":{"unknown key": "unknown value","unknown key2": "unknown value 2"}
    }
    `

    json.Unmarshal([]byte(body), &t)

    fmt.Println(t.p)
}

Dieser Code gibt immer eine leere Karte zurück.


Richtige Antwort


Sie sollten die Strukturfelder exportieren, die nicht gemarshallt werden sollen, zum Beispiel:

type test struct {
    P map[string]string `json:"properties"`
}

Siehe https://www.php.cn/link/eaf76caaba574ebf8e825f321c14ba29

Das obige ist der detaillierte Inhalt vonSo entmarshalieren Sie JSON mit unbekannten Feldern und Schlüsseln. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Dieser Artikel ist reproduziert unter:stackoverflow.com. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen