Heim >Backend-Entwicklung >Golang >Wie analysiere ich eine verschachtelte JSON-HTTP-Antwort in Go?
JSON-HTTP-Antwort mit Go analysieren
Um eine JSON-Antwort aus einer HTTP-Anfrage in Golang zu analysieren, können Sie die JSON-Dekodierung zum Konvertieren verwenden Antworttext in eine Struktur umwandeln, die die JSON-Struktur widerspiegelt.
Code Beispiel
Der folgende Code zeigt, wie eine JSON-Antwort mit verschachtelten Strukturen analysiert wird, um den Wert von „ip“ zu erhalten:
package main import ( "bytes" "encoding/json" "fmt" "log" "net/http" "time" ) type Example struct { Type string `json:"type,omitempty"` Subsets []Subset `json:"subsets,omitempty"` } type Subset struct { Addresses []Address `json:"addresses,omitempty"` } type Address struct { IP string `json:"IP,omitempty"` } func main() { m := []byte(`{ "type": "example", "data": { "name": "abc", "labels": { "key": "value" } }, "subsets": [ { "addresses": [ { "ip": "192.168.103.178" } ], "ports": [ { "port": 80 } ] } ] }`) r := bytes.NewReader(m) decoder := json.NewDecoder(r) val := &Example{} err := decoder.Decode(val) if err != nil { log.Fatal(err) } // Iterate over subsets and addresses to access each IP for _, s := range val.Subsets { for _, a := range s.Addresses { fmt.Println(a.IP) } } }
Durch die Nutzung der JSON-Dekodierung wird eine Struktur erstellt, die spiegelt die JSON-Struktur wider. Sie können dynamisch auf die Daten in der Antwort zugreifen und diese analysieren, einschließlich verschachtelter Elemente wie dem „ip“-Feld.
Das obige ist der detaillierte Inhalt vonWie analysiere ich eine verschachtelte JSON-HTTP-Antwort in Go?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!