访问处理程序中的post参数

Max*_*mov 15 go mux

我可以GET使用mux访问参数:

import (
    "github.com/gorilla/mux"
)
func main(){
     rtr := mux.NewRouter()
     rtr.HandleFunc("/logon", logonGet).Methods("GET")
}
func logonGet(w http.ResponseWriter, r *http.Request) {
    params := mux.Vars(r)
    login := params["login"]
}
Run Code Online (Sandbox Code Playgroud)

但无法弄清楚如何访问 POST params

func main(){
     rtr := mux.NewRouter()
     rtr.HandleFunc("/logon", logonPost).Methods("POST")
}
func logonPost(w http.ResponseWriter, r *http.Request) {
    // how to get POST parameters from request
}
Run Code Online (Sandbox Code Playgroud)

Ain*_*r-G 27

通过使用(*http.Request).FormValue方法.

func logonPost(w http.ResponseWriter, r *http.Request) {
    login := r.FormValue("login")
    // ...
}
Run Code Online (Sandbox Code Playgroud)