【发布时间】:2017-12-18 20:29:41
【问题描述】:
我想处理未定义参数的情况。
import (
// ...
"github.com/gorilla/mux"
)
func main() {
router := mux.NewRouter()
router.HandleFunc("/connect", Connect).Methods("POST")
log.Fatal(http.ListenAndServe(":7777", router))
}
// ...
func Connect(w http.ResponseWriter, r *http.Request) {
params := mux.Vars(r)
if params["password"] == nil {
fmt.Println("login without password")
} else {
fmt.Println("login with password")
}
}
我也试过if !params["ssid"] {
什么是正确的语法?
使用mux.Vars(r) 我正在尝试从以下位置捕获帖子参数:
curl -H 'Content-Type: application/json' -d '{"ssid":"wifi"}' -X POST http://localhost:7777/connect
ssid 是必需的,但 password 是可选的。
【问题讨论】:
-
您使用的是什么框架/库? mux.Vars 返回什么?
-
@CeriseLimón 我用我要捕获的参数更新了问题。
-
@Howl 我正在使用github.com/gorilla/mux
-
@PhilipKirkbride 更新您的问题以包含您正在使用的库的名称(和链接);否则人们将不知道
mux.Vars是什么类型或一般如何提供帮助...... -
@maerics 好的,我认为
mux是一个非常受欢迎的库