- **app.conf**中已加入 copyrequestbody = true
appname = goblog
httpport = 8080
runmode = dev
copyrequestbody = true
- **router.go**中设置路由规则
func init() {
beego.Router("/", &controllers.MainController{})
beego.Router("/login", &controllers.LoginController{})
}
- 页面代码
<div class="pull-right">
<ul class="nav navbar-nav">
{{if .IsLogin}}
<li>
<a href="/login?logout=true">退出</a>
</li>
{{else}}
<li>
<a href="/login">管理员登录</a>
</li>
{{end}}
</ul>
</div>
- **login.go**中处理请求
type LoginController struct {
beego.Controller
}
func (this *LoginController) Get() {
beego.Info("The Login Get().")
beego.Info(this.Input().Get("logout")) // 始终得到的是空字符串
isLogout := this.Input().Get("logout") == "true"
beego.Info(strconv.FormatBool(isLogout))
if isLogout {
beego.Info("The isLogout is true.")
this.Ctx.SetCookie("account", "", -1, "/")
this.Ctx.SetCookie("password", "", -1, "/")
this.Redirect("/login", 301)
return
}
this.TplName = "login.html"
}
请大佬们帮忙分析下,请求地址 /login?logout=true,后台 this.Input().Get("logout") 取不到值的问题出在哪儿,非常感谢。
萌新请教,在beego中一个带参的 /login?logout=true GET请求,this.Input().Get("logout") 得到空字符串。
wangdaken · · 1213 次点击更多评论
beego.Info(this.Input().Get("logout")) // 始终得到的是空字符串
fmt.Println(this.Input().Get("logout"))
可以取到
#1