Maison >développement back-end >Golang >Comment envoyer une requête HTTP JSON en utilisant Golang ?
Comment utiliser Go pour envoyer les étapes de requête HTTP JSON : Créez un objet http.Client. Créez un objet http.Request, en spécifiant l'URL et la méthode. Définissez l’en-tête de la requête et définissez Content-Type sur application/json. Encodez les données JSON dans un tableau d'octets. Définit le tableau d'octets dans le corps de la requête. Envoyez la demande et traitez la réponse.
Comment envoyer des requêtes HTTP JSON à l'aide de Go
Introduction
Le langage Go rend l'envoi de requêtes JSON très simple grâce à sa riche bibliothèque HTTP. Cet article vous expliquera comment utiliser le package net/http
pour envoyer des requêtes HTTP JSON et fournira un cas pratique. net/http
包来发送 HTTP JSON 请求,并提供一个实战案例。
发送 JSON 请求
发送 JSON 请求需要以下步骤:
http.Client
对象。http.Request
对象,指定要发送请求的 URL 和方法。Content-Type
设置为 application/json
http.Client
. Créez un objet http.Request
et spécifiez l'URL et la méthode pour envoyer la requête. Définissez l'en-tête de la requête et définissez Content-Type
sur application/json
.
Encodez les données JSON dans un tableau d'octets. Définissez le tableau d'octets dans le corps de la requête.
Envoyez la demande et gérez la réponse.
🎜🎜🎜Exemple de code🎜🎜import ( "bytes" "encoding/json" "fmt" "io/ioutil" "net/http" ) func main() { // 创建数据 data := map[string]string{"name": "Alice", "age": "25"} // 编码 JSON 数据 jsonBytes, err := json.Marshal(data) if err != nil { fmt.Printf("Error encoding JSON: %v", err) return } // 创建请求 req, err := http.NewRequest("POST", "http://example.com", bytes.NewReader(jsonBytes)) if err != nil { fmt.Printf("Error creating request: %v", err) return } // 设置请求头 req.Header.Set("Content-Type", "application/json") // 发送请求 client := &http.Client{} resp, err := client.Do(req) if err != nil { fmt.Printf("Error sending request: %v", err) return } // 读取响应 defer resp.Body.Close() body, err := ioutil.ReadAll(resp.Body) if err != nil { fmt.Printf("Error reading response: %v", err) return } fmt.Println("Response:", string(body)) }🎜🎜Exemple pratique🎜🎜🎜Cet exemple envoie une requête JSON à l'API pour créer un nouvel utilisateur : 🎜
// 创建用户数据 type User struct { Name string `json:"name"` Age int `json:"age"` } user := &User{Name: "Bob", Age: 30} // 编码 JSON 数据 jsonBytes, err := json.Marshal(user) // ... // ... 使用上文中的其余代码发送请求 ...
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!