ホームページ > バックエンド開発 > Golang > GolangでREST APIを使用してサーバーからJSONデータを取得するにはどうすればよいですか?

GolangでREST APIを使用してサーバーからJSONデータを取得するにはどうすればよいですか?

WBOY
リリース: 2024-06-01 11:51:56
オリジナル
700 人が閲覧しました

Golang で JSON データを取得する手順: HTTP クライアントを作成し、HTTP リクエストを使用してリクエスト メソッド、URL およびリクエスト本文を指定し、HTTP リクエストを実行し、JSON レスポンスを解析します。

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

GolangでREST APIを使用してサーバーからJSONデータを取得する方法

Golangではnet/httpパッケージを使用してREST APIから簡単にJSONデータを取得できます。その方法は次のとおりです:

1. HTTP クライアントを作成します

HTTP リクエストを行うためのクライアントを作成する必要があります。

// 创建一个新的 HTTP 客户端
client := &http.Client{}
ログイン後にコピー

2. HTTP リクエストを作成します

HTTP リクエストを作成し、リクエスト メソッド、URL、リクエスト本文 (必要な場合) を指定します。

// 创建一个新的 HTTP 请求
req, err := http.NewRequest(method, url, body)
if err != nil {
    fmt.Println(err)
    return
}
ログイン後にコピー

3. HTTP ヘッダーを追加します

必要に応じて、HTTP ヘッダーをリクエストに追加できます。

// 添加 HTTP 头
req.Header.Add("Content-Type", "application/json")
ログイン後にコピー

4. HTTP リクエストを実行します

クライアントを使用して HTTP リクエストを実行します。

// 执行 HTTP 请求
resp, err := client.Do(req)
if err != nil {
    fmt.Println(err)
    return
}
ログイン後にコピー

5. 応答ステータス コードを確認します。

応答のステータス コードを確認して、リクエストが成功したことを確認します。

// 检查响应状态代码
if resp.StatusCode != http.StatusOK {
    fmt.Println("请求失败: ", resp.Status)
    return
}
ログイン後にコピー

6. JSON 応答を解析する

JSON デコーダーを使用して JSON 応答をデコードします。

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

// 解析 JSON 响应
var data interface{}
if err := decoder.Decode(&data); err != nil {
    fmt.Println(err)
    return
}
ログイン後にコピー

実際的なケース

JSONPlaceholder API からユーザー データを取得したいとします。次のコードを使用できます:

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"])
    }
}
ログイン後にコピー

これは、Golang で REST API を使用してサーバーから JSON データを取得する方法です。

以上がGolangでREST APIを使用してサーバーからJSONデータを取得するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート