Maison >développement back-end >Golang >Maîtriser Go : Anatomie d'une requête POST
En langage Go, l'analyse des requêtes POST est divisée en les étapes suivantes : Utilisez ParseForm() pour analyser les données du formulaire. Utilisez FormValue() pour obtenir la valeur d'un champ spécifique. Utilisez le package encoding/json pour analyser les données JSON. Utilisez json.Unmarshal() pour analyser les données JSON dans des structures Go.
Une requête POST est une méthode HTTP utilisée pour soumettre des données au serveur. Dans le langage Go, le processus d'analyse d'une requête POST est simple.
Le type de requête POST le plus courant est celui des données de formulaire. Voici comment analyser les données du formulaire :
package main import ( "fmt" "net/http" ) func main() { http.HandleFunc("/", func(w http.ResponseWriter, r *http.Request) { if r.Method == "POST" { r.ParseForm() name := r.FormValue("name") email := r.FormValue("email") fmt.Fprintf(w, "Name: %s\nEmail: %s", name, email) } }) http.ListenAndServe(":8080", nil) }
Dans l'exemple ci-dessus, nous utilisons la fonction ParseForm()
pour analyser les données du formulaire. Nous pouvons ensuite utiliser la fonction FormValue()
pour obtenir la valeur d'un champ spécifique. ParseForm()
函数解析表单数据。然后,我们可以使用 FormValue()
函数获取特定字段的值。
另一种常见的 POST 请求类型是 JSON 数据。以下是如何解析 JSON 数据:
package main import ( "encoding/json" "fmt" "io/ioutil" "net/http" ) type User struct { Name string `json:"name"` Email string `json:"email"` } func main() { http.HandleFunc("/", func(w http.ResponseWriter, r *http.Request) { if r.Method == "POST" { bodyBytes, _ := ioutil.ReadAll(r.Body) var user User json.Unmarshal(bodyBytes, &user) fmt.Fprintf(w, "Name: %s\nEmail: %s", user.Name, user.Email) } }) http.ListenAndServe(":8080", nil) }
在上面的示例中,我们使用 encoding/json
rrreee
Dans l'exemple ci-dessus, nous utilisons le packageencoding/json
pour analyser les données JSON dans des structures Go. Cela nous permet d'accéder facilement aux champs individuels des données demandées. 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!