Golang で JSON データを取得する手順: HTTP クライアントを作成し、HTTP リクエストを使用してリクエスト メソッド、URL およびリクエスト本文を指定し、HTTP リクエストを実行し、JSON レスポンスを解析します。
Golangではnet/http
パッケージを使用してREST APIから簡単にJSONデータを取得できます。その方法は次のとおりです:
HTTP リクエストを行うためのクライアントを作成する必要があります。
// 创建一个新的 HTTP 客户端 client := &http.Client{}
HTTP リクエストを作成し、リクエスト メソッド、URL、リクエスト本文 (必要な場合) を指定します。
// 创建一个新的 HTTP 请求 req, err := http.NewRequest(method, url, body) if err != nil { fmt.Println(err) return }
必要に応じて、HTTP ヘッダーをリクエストに追加できます。
// 添加 HTTP 头 req.Header.Add("Content-Type", "application/json")
クライアントを使用して HTTP リクエストを実行します。
// 执行 HTTP 请求 resp, err := client.Do(req) if err != nil { fmt.Println(err) return }
応答のステータス コードを確認して、リクエストが成功したことを確認します。
// 检查响应状态代码 if resp.StatusCode != http.StatusOK { fmt.Println("请求失败: ", resp.Status) return }
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 サイトの他の関連記事を参照してください。