En langage Go, les requêtes POST peuvent être implémentées via les types NewRequest et Client du package net/http. La syntaxe est la suivante : Créer une requête : func postRequest(url, contentType string, body []byte) Définir l'en-tête de la requête : req.Header.Set("Content-Type", contentType) Envoyer une requête : resp, err : = client.Do(req ) Lisez le corps de la réponse : body, err := ioutil.ReadAll(resp.Body)
Go langage Détails de la demande POST et application pratique
Introduction
La demande POST est un type de requête HTTP utilisé pour envoyer des données au serveur. Dans le langage Go, les requêtes POST peuvent être implémentées via les types NewRequest
et Client
du package net/http
. net/http
包的 NewRequest
和 Client
类型来实现。
语法
import ( "bytes" "io/ioutil" "net/http" ) func postRequest(url, contentType string, body []byte) ([]byte, error) { req, err := http.NewRequest("POST", url, bytes.NewBuffer(body)) if err != nil { return nil, err } req.Header.Set("Content-Type", contentType) client := &http.Client{} resp, err := client.Do(req) if err != nil { return nil, err } defer resp.Body.Close() body, err := ioutil.ReadAll(resp.Body) if err != nil { return nil, err } return body, nil }
实战案例
创建一个简单的 Go 语言程序来发送 POST 请求并从服务器获取响应:
package main import ( "fmt" "net/http" "os" ) func main() { url := "http://example.com" contentType := "application/json" body := []byte(`{"name": "John Smith", "age": 30}`) resp, err := postRequest(url, contentType, body) if err != nil { fmt.Println(err) os.Exit(1) } fmt.Println(string(resp)) }
在这个示例中,我们向一个名为 example.com
Syntaxerrreee
example.com
envoie une requête POST et le corps de la requête est un objet JSON. Le serveur peut gérer cette requête POST et renvoyer une réponse. 🎜🎜🎜Lecture approfondie🎜🎜🎜🎜[Paquet Go Language net/http](https://golang.org/pkg/net/http/)🎜🎜[Demande HTTP POST](https://developer.mozilla.org /zh-CN/docs/Web/HTTP/Methods/POST)🎜🎜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!