我是围棋新手。因此,请提供一个示例和您的答案。我正在使用 julienschmidt/httprouter。我可以用这个解析一个参数,但是如何使用这个或任何其他库解析多个参数?我想要实现的输出是从这个 url获取dgff@vcv.com& :->dccccfhttp://localhost:8080/login?id=dgff@vcv.com&pwd=dccccf我的代码在:- https://github.com/mohit810/prog-1我尝试r.GET("/login",uc.LoginUser)在 main.go 和 controllers/user.go 中添加func (uc UserController) LoginUser(w http.ResponseWriter, request *http.Request, params httprouter.Params) { emailId := params.ByName("id") pwd := params.ByName("pwd") u := models.User{} if err := uc.session.DB("go-web-dev-db").C("users").FindId(emailId + pwd).One(&u); err != nil { w.WriteHeader(404) return } uj, err := json.Marshal(u) if err != nil { fmt.Println(err) } w.Header().Set("Content-Type", "application/json") w.WriteHeader(http.StatusOK) // 200 fmt.Fprintf(w, "%s\n", uj)}
1 回答
郎朗坤
TA贡献1921条经验 获得超9个赞
在 main.go 中添加以下内容
r.GET("/login",uc.LoginUser)
并在 controllers/user.go 中添加以下内容
func (uc UserController) LoginUser(w http.ResponseWriter, request *http.Request, params httprouter.Params) {
emailId := request.URL.Query().Get("id")
pwd := request.URL.Query().Get("pwd")
u := models.User{}
if err := uc.session.DB("go-web-dev-db").C("users").FindId(emailId + pwd).One(&u); err != nil {
w.WriteHeader(404)
return
}
uj, err := json.Marshal(u)
if err != nil {
fmt.Println(err)
}
w.Header().Set("Content-Type", "application/json")
w.WriteHeader(http.StatusOK) // 200
fmt.Fprintf(w, "%s\n", uj)
}
- 1 回答
- 0 关注
- 245 浏览
添加回答
举报
0/150
提交
取消