Golang을 사용하여 JSON HTTP 응답 구문 분석
Go에서 JSON HTTP 응답을 구문 분석하면 개발자가 데이터를 효율적으로 추출하고 처리할 수 있습니다. 이 질문은 사용자가 JSON 응답에서 IP 주소를 추출하려는 시나리오를 다룹니다.
제공된 Go 코드는 json.Unmarshal 함수를 사용하여 JSON을 구문 분석하려고 시도합니다. 그러나 JSON 구조를 정확하게 반영하지 않는 구조체 svc에 디코딩된 데이터를 할당합니다.
JSON을 올바르게 구문 분석하려면 다음 코드에 설명된 대로 JSON 구조를 미러링하는 구조체를 정의해야 합니다.
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"` }
구조체를 정의한 후에는 json.NewDecoder를 사용하여 JSON 응답을 예제 인스턴스로 디코딩할 수 있습니다. struct:
r := bytes.NewReader(m) decoder := json.NewDecoder(r) val := &Example{} err := decoder.Decode(val)
이 접근 방식을 사용하면 구문 분석된 예제 구조체 내의 하위 집합 및 주소 슬라이스를 반복하여 IP 주소에 액세스할 수 있습니다.
for _, s := range val.Subsets { for _, a := range s.Addresses { fmt.Println(a.IP) } }
위 내용은 Golang의 JSON HTTP 응답에서 IP 주소를 추출하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!