Golang Read POST Form Values

Kevin FOO
Dec 2, 2020

The example below uses gorilla/mux package

package main

import (
"fmt"
"log"
"net/http"
"github.com/gorilla/mux"
)

func YourHandler(w http.ResponseWriter, r *http.Request) {
r.ParseForm()
log.Println("one=" + r.FormValue("one"))
log.Println("two=" + r.FormValue("two"))
fmt.Fprintf(w, "Gorilla!\n")
}

func main() {
r := mux.NewRouter()
r.HandleFunc("/", YourHandler).Methods("POST")
log.Fatal(http.ListenAndServe(":8000", r))
}

With the codes above, try posting a form with curl or postman

curl -X POST --data 'one=1' 'http://localhost:8000/'

Your should see the following in your web server console.

Variable one returns with the value 1 as posted.

Variable two is empty as it is not in the form.

< Back to all the stories I had written

--

--

Kevin FOO

A software engineer, a rock climbing, inline skating enthusiast, a husband, a father.