2
在http請求中,我想知道請求是否包含特定參數,類似於PHP的isset
函數。如何在Go中測試它?謝謝。Go有沒有類似於PHP的isset()的函數?
在http請求中,我想知道請求是否包含特定參數,類似於PHP的isset
函數。如何在Go中測試它?謝謝。Go有沒有類似於PHP的isset()的函數?
同樣的問題被張貼在谷歌論壇,這是解決方案有:
func PrintUser(w http.ResponseWriter, r *http.Request) {
user := r.FormValue("user")
pass := r.FormValue("pass")
if user == "" || pass == "" {
fmt.Fprintf(w, "Missing username or password")
return
}
fmt.Fprintf(w, "Hi %s!", user) //I doubt you want to print the password.
}
一旦你解析請求,可以隨時查詢參數的值類型爲等於該類型的零值。
例如,你可以使用「逗號,確定」成語來檢查查詢參數:
u, err := url.Parse("http://google.com/search?q=term")
if err != nil {
log.Fatal(err)
}
q := u.Query()
if _, ok := q["q"]; ok {
// process q
}