12345678910111213141516171819202122232425262728293031323334353637383940414243 |
- package admin
- import (
- "cc-officialweb/models"
- "cc-officialweb/service"
- "github.com/beego/beego/v2/adapter/validation"
- beego "github.com/beego/beego/v2/server/web"
- )
- type LoginController struct {
- beego.Controller
- }
- func (l *LoginController) Get() {
- l.TplName = "admin/login.html"
- }
- func (l *LoginController) Post() {
- var user models.User
- // 获取POST参数
- username := l.GetString("username")
- password := l.GetString("password")
- // 进行验证和登录检查
- valid := validation.Validation{}
- valid.Required(username, "username").Message("用户名不能为空")
- valid.Required(password, "password").Message("密码不能为空")
- user.Username = username
- user.Password = password
- if valid.HasErrors() {
- for _, err := range valid.Errors {
- l.Data["error"] = err.Message
- break
- }
- } else {
- token := service.Login(user)
- if token != "" {
- l.Ctx.SetCookie("token", token, 3600*24*7, "/", "", false, true)
- l.Redirect("/admin/index", 302)
- } else {
- l.Data["error"] = "用户名或密码错误"
- }
- }
- l.TplName = "admin/login.html"
- }
|