Schritte zum Abrufen von JSON-Daten: Erstellen Sie einen HTTP-Client. Geben Sie die Anforderungsmethode, die URL und den Anforderungstext an. Fügen Sie HTTP-Header hinzu. Überprüfen Sie den Antwortstatuscode.
In Golang können Sie JSON-Daten ganz einfach mit dem net/http
-Paket von der REST-API abrufen. So geht's:
Sie müssen einen Client erstellen, um HTTP-Anfragen zu stellen.
// 创建一个新的 HTTP 客户端 client := &http.Client{}
Erstellen Sie eine HTTP-Anfrage, geben Sie die Anfragemethode, die URL und den Anfragetext an (falls erforderlich).
// 创建一个新的 HTTP 请求 req, err := http.NewRequest(method, url, body) if err != nil { fmt.Println(err) return }
Sie können der Anfrage nach Bedarf HTTP-Header hinzufügen.
// 添加 HTTP 头 req.Header.Add("Content-Type", "application/json")
Verwenden Sie den Client, um HTTP-Anfragen auszuführen.
// 执行 HTTP 请求 resp, err := client.Do(req) if err != nil { fmt.Println(err) return }
Überprüfen Sie den Statuscode der Antwort, um sicherzustellen, dass die Anfrage erfolgreich war.
// 检查响应状态代码 if resp.StatusCode != http.StatusOK { fmt.Println("请求失败: ", resp.Status) return }
Verwenden Sie den JSON-Decoder, um die JSON-Antwort zu dekodieren.
// 创建 JSON 解码器 decoder := json.NewDecoder(resp.Body) // 解析 JSON 响应 var data interface{} if err := decoder.Decode(&data); err != nil { fmt.Println(err) return }
Angenommen, Sie möchten Benutzerdaten von der JSONPlaceholder-API abrufen, können Sie den folgenden Code verwenden:
func main() { // 创建 HTTP 请求 resp, err := http.Get("https://jsonplaceholder.typicode.com/users") if err != nil { fmt.Println(err) return } // 检查状态代码 if resp.StatusCode != 200 { fmt.Println(resp.Status) return } // 解析 JSON 响应 var users []map[string]interface{} decoder := json.NewDecoder(resp.Body) if err := decoder.Decode(&users); err != nil { fmt.Println(err) return } // 打印用户名称 for _, user := range users { fmt.Println(user["name"]) } }
So erhalten Sie JSON-Daten vom Server mithilfe der REST-API in Golang.
Das obige ist der detaillierte Inhalt vonWie erhalte ich JSON-Daten vom Server mithilfe der REST-API in Golang?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!