登陆界面后台接受Post数据后,在项目目录创建文件夹utils,写一个用md5加密密码的go文件
(可以去test文件夹里也要创建test_md5.go的代码文件获取加密密码)
func Md5ps(pwd string)string{
h:= md5.New()
h.Write([]byte(pwd))
return hex.EncodeToString(h.Sum(nil))
}
回到login.go文件里
func (l *LoginController)Post(){
//获取前台post的数据
username := l.GetString("username")
password := l.GetString("password")
//用md5加密
pwd := utils.Md5ps(password)
//链接数据库
o:= orm.NewOrm()
user := models.User{}
//查询判断数据
o.QueryTable(new(models.User)).Filter("Username",username).One(&user)
if user.Username == ""{
l.Data["json"] = map[string]interface{}{"code":400,"msg":"未查询到此用户"}
l.ServeJSON()
l.Redirect(beego.URLFor("LoginController.Get"),302)
return
}
if user.Password != pwd{
l.Data["json"] = map[string]interface{}{"code":401,"msg":"密码错误"}
l.ServeJSON()
l.Redirect(beego.URLFor("LoginController.Get"),302)
return
}
//写入session,然后跳转到登陆界面
l.SetSession("username",username)
l.Redirect(beego.URLFor("MainController.Get"),302)
fmt.Println("=========================登陆成功=========================")
}