Heim >Backend-Entwicklung >Golang >Wie erhalte ich JSON-Daten vom Server mithilfe der REST-API in Golang?

Wie erhalte ich JSON-Daten vom Server mithilfe der REST-API in Golang?

WBOY
WBOYOriginal
2024-06-01 11:51:56696Durchsuche

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.

如何在 Golang 中使用 REST API 从服务器获取 JSON 数据?

So erhalten Sie JSON-Daten vom Server mit der REST-API in Golang

In Golang können Sie JSON-Daten ganz einfach mit dem net/http-Paket von der REST-API abrufen. So geht's:

1. Erstellen Sie einen HTTP-Client

Sie müssen einen Client erstellen, um HTTP-Anfragen zu stellen.

// 创建一个新的 HTTP 客户端
client := &http.Client{}

2. HTTP-Anfrage erstellen

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
}

3. HTTP-Header hinzufügen

Sie können der Anfrage nach Bedarf HTTP-Header hinzufügen.

// 添加 HTTP 头
req.Header.Add("Content-Type", "application/json")

4. HTTP-Anfragen ausführen

Verwenden Sie den Client, um HTTP-Anfragen auszuführen.

// 执行 HTTP 请求
resp, err := client.Do(req)
if err != nil {
    fmt.Println(err)
    return
}

5. Überprüfen Sie den Antwortstatuscode.

Überprüfen Sie den Statuscode der Antwort, um sicherzustellen, dass die Anfrage erfolgreich war.

// 检查响应状态代码
if resp.StatusCode != http.StatusOK {
    fmt.Println("请求失败: ", resp.Status)
    return
}

6. JSON-Antwort analysieren

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
}

Praktischer Fall

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!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Vorheriger Artikel:Wie teste ich Pakete in Go?Nächster Artikel:Wie teste ich Pakete in Go?