Go 言語では、POST リクエストの解析は次の手順に分かれています。 ParseForm() を使用してフォーム データを解析します。 FormValue() を使用して、特定のフィールドの値を取得します。 JSON データを解析するには、encoding/json パッケージを使用します。 json.Unmarshal() を使用して、JSON データを Go 構造に解析します。
POST リクエストは、データをサーバーに送信するために使用される HTTP メソッドです。 Go 言語では、POST リクエストを解析するプロセスは簡単です。
最も一般的なタイプの POST リクエストはフォーム データです。フォーム データを解析する方法は次のとおりです。
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) }
上の例では、ParseForm()
関数を使用してフォーム データを解析します。次に、FormValue()
関数を使用して、特定のフィールドの値を取得します。
もう 1 つの一般的な 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
パッケージを使用して、JSON データを Go の構造体に解析します。これにより、要求されたデータの個々のフィールドに簡単にアクセスできるようになります。
以下は、Go 言語を使用して POST リクエストを解析する方法を示すいくつかの実践的なケースです:
以上がGo をマスターする: POST リクエストの構造の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。