Go 從http網頁伺服器接收的請求http.Request
取得url參數(query string)的方式如下。
Go以http.HandleFunc(pattern string, handler func(ResponseWriter, *Request)))
處理請求時,會將http.Request
傳入handler函式的第二個參數。
使用http.Request.URL.Query().Get(key string)
即可取得url參數。
例如下面在處理請求的函式中取得url請求參數key為name
的值。
main.go
package main
import (
"fmt"
"net/http"
)
func main() {
http.HandleFunc("/demo", func(rw http.ResponseWriter, r *http.Request) {
name := r.URL.Query().Get("name") // get URL param with key "name"
fmt.Fprint(rw, name)
})
http.ListenAndServe(":8080", nil)
}
啟動程式在瀏覽器網址列輸入http://localhost:8080/demo?name=john
得到的回應結果如下。
john
或在命令列以curl發出curl -X GET "http://localhost:8080/demo?name=john"
的回應如下。
$ curl -X GET "http://localhost:8080/demo?name=john"
john
沒有留言:
張貼留言