Rumah > pembangunan bahagian belakang > Golang > Bagaimana untuk mendapatkan data JSON daripada pelayan menggunakan API REST di Golang?

Bagaimana untuk mendapatkan data JSON daripada pelayan menggunakan API REST di Golang?

WBOY
Lepaskan: 2024-06-01 11:51:56
asal
713 orang telah melayarinya

Langkah untuk mendapatkan data JSON dalam Golang: Buat klien HTTP, tentukan kaedah permintaan, URL dan isi permintaan menggunakan permintaan HTTP;

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

Cara mendapatkan data JSON daripada pelayan menggunakan REST API di Golang

Di Golang, anda boleh mendapatkan data JSON daripada REST API menggunakan pakej net/http dengan mudah. Begini cara untuk melakukannya:

1 Buat klien HTTP

Anda perlu mencipta klien untuk membuat permintaan HTTP.

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

2. Cipta permintaan HTTP

Bina permintaan HTTP, nyatakan kaedah permintaan, URL dan isi permintaan (jika perlu).

// 创建一个新的 HTTP 请求
req, err := http.NewRequest(method, url, body)
if err != nil {
    fmt.Println(err)
    return
}
Salin selepas log masuk

3. Tambahkan pengepala HTTP

Anda boleh menambah pengepala HTTP pada permintaan seperti yang diperlukan.

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

4. Lakukan permintaan HTTP

Gunakan klien untuk melaksanakan permintaan HTTP.

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

5. Semak kod status respons

Semak kod status respons untuk memastikan permintaan berjaya.

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

6. Menghuraikan respons JSON

Gunakan penyahkod JSON untuk menyahkod respons JSON.

// 创建 JSON 解码器
decoder := json.NewDecoder(resp.Body)

// 解析 JSON 响应
var data interface{}
if err := decoder.Decode(&data); err != nil {
    fmt.Println(err)
    return
}
Salin selepas log masuk

Kes praktikal

Andaikata anda ingin mendapatkan data pengguna daripada JSONPlaceholder API, anda boleh menggunakan kod berikut:

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"])
    }
}
Salin selepas log masuk

Ini adalah cara mendapatkan data JSON dari pelayan menggunakan API REST di Golang.

Atas ialah kandungan terperinci Bagaimana untuk mendapatkan data JSON daripada pelayan menggunakan API REST di Golang?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Label berkaitan:
sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan