Maison >développement back-end >Golang >Comment puis-je extraire la valeur « ip » d'une réponse HTTP JSON dans Golang ?
Analyser la réponse HTTP JSON à l'aide de Golang
Pour récupérer la valeur de "ip" à partir de la réponse JSON fournie, il est recommandé d'utiliser des paramètres personnalisés des structures qui reflètent la structure JSON et décodent la réponse en conséquence. Considérez le code suivant :
import ( "bytes" "encoding/json" "fmt" "log" ) // Define structs to match the JSON structure type Example struct { Type string `json:"type"` Subsets []Subset `json:"subsets"` } type Subset struct { Addresses []Address `json:"addresses"` } type Address struct { IP string `json:"ip"` } func main() { // Define the JSON input m := []byte(`{"type":"example","data":{"name":"abc","labels":{"key":"value"}},"subsets":[{"addresses":[{"ip":"192.168.103.178"}],"ports":[{"port":80}]}]}`) // Create a reader from the JSON input r := bytes.NewReader(m) decoder := json.NewDecoder(r) // Decode the JSON into the Example struct val := &Example{} if err := decoder.Decode(val); err != nil { log.Fatal(err) } // Iterate over the Subsets and Addresses slices to access each IP for _, s := range val.Subsets { for _, a := range s.Addresses { fmt.Println(a.IP) } } }
Cette approche permet de décoder la réponse JSON en structures personnalisées, offrant la possibilité de parcourir des tranches et de récupérer des valeurs spécifiques en accédant aux membres de la structure (par exemple, a.IP). Le code fourni démontre le flux de travail de bout en bout consistant à lire une réponse JSON, à la décoder en structures et à extraire des valeurs spécifiques.
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!