beego简单注册
四个步骤
请求 -- 路由 -- 控制器 -- 页面
注册实现:
1.获取数据
2.校验数据
3.操作数据
4.返回数据
userName := this.getString("userName")
pwd := this.getString("password")
if userName=="" || pwd==""{
this.Data["err"]="用户名或者密码不能为空"
this.TplName="login.html"
return
}
o := orm.NewOrm()
var user models.User
user.UserName=userName
err := o.Read(&user, "UserName")
if err!=nil {
this.Data["err"]="用户名不存在"
this.TplName="login.html"
return
}
if user.Pwd!=pwd{
this.Data["err"]="密码错误"
this.TplName="login.html"
return
}
this.Ctx.WriteString("登录成功")
http状态码
五类状态码
1xx 请求发送成功,请继续发送请求
2xx 请求成功
3xx 资源转移,重定向,300,301,302
4xx 请求端错误,请求的资源没有401,402,404
5xx 服务端错误,500
this.TpeName 和 this.redirect都可以到login.html
前者是渲染
后者是跳转
那么两者有什么区别
1.渲染的地址栏不发生改变,跳转时地址栏发生改变
2.渲染是发送了一次请求,返回了一个页面
跳转是发送1次后,服务器返回302和一个地址,
然后再发了1次请求
3.当需要给页面传递数据的时候,用渲染
当从一个页面跳转到另一个页面的时候
需要地址栏改变的时候,用跳转