Maison >développement back-end >Golang >Maîtriser Go : Anatomie d'une requête POST

Maîtriser Go : Anatomie d'une requête POST

WBOY
WBOYoriginal
2024-04-08 08:24:01911parcourir

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.

精通 Go 语言:剖析 POST 请求

Maîtrise du langage Go : Analyse des requêtes POST

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.

Analyse des données de formulaire

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() 函数获取特定字段的值。

解析 JSON 数据

另一种常见的 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

Analyser les données JSON

Un autre type de requête POST courant est les données JSON. Voici comment analyser les données JSON :

rrreee

Dans l'exemple ci-dessus, nous utilisons le package encoding/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.
  • Cas pratiques
  • Voici quelques cas pratiques qui montrent comment utiliser le langage Go pour analyser les requêtes POST :
  • Utiliser les données du formulaire pour l'enregistrement des utilisateurs
🎜Utiliser les données JSON pour mettre à jour les informations utilisateur🎜🎜Utiliser les requêtes POST pour soumettre le fichier téléchargements🎜🎜

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!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn