From d4f743b7f2587e1e035a2078c604d9f89b5d2ef4 Mon Sep 17 00:00:00 2001 From: LawyZHENG Date: Wed, 24 Mar 2021 14:13:36 +0800 Subject: [PATCH] =?UTF-8?q?=E5=8F=96=E6=B6=88=E4=B8=B4=E6=97=B6=E7=99=BB?= =?UTF-8?q?=E5=BD=95=E6=8E=A5=E5=8F=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- controllers/AccountController.go | 65 -------------------------------- 1 file changed, 65 deletions(-) diff --git a/controllers/AccountController.go b/controllers/AccountController.go index 6b2c26a4..8998eb71 100644 --- a/controllers/AccountController.go +++ b/controllers/AccountController.go @@ -1,10 +1,6 @@ package controllers import ( - "crypto/hmac" - "crypto/sha1" - "encoding/base64" - "fmt" "net/url" "regexp" "strings" @@ -181,67 +177,6 @@ func (c *AccountController) DingTalkLogin() { c.JsonResult(0, "ok", username) } -// 临时登录 -func (c *AccountController) TmpLogin() { - if c.Member != nil { - c.Redirect(conf.URLFor("HomeController.Index"), 302) - } - - tmpToken := c.GetString("tmpToken") - if tmpToken == "" { - c.Redirect(conf.URLFor("AccountController.Login"), 302) - } - - tmp, err := base64.URLEncoding.DecodeString(tmpToken) - if err != nil { - c.Redirect(conf.URLFor("AccountController.Login"), 302) - } - - tmpToken = string(tmp) - var remember CookieRemember - // 如果 Cookie 中存在登录信息 - cookie, ok := c.GetSecureCookie(conf.GetAppKey(), "login") - if !ok { - cookie, ok = parseHelper(tmpToken) - } - - // 解析用户,并登录 - if ok { - if err := utils.Decode(cookie, &remember); err == nil { - if member, err := models.NewMember().Find(remember.MemberId); err == nil { - c.SetMember(*member) - c.LoggedIn(false) - c.StopRun() - } - } - } - c.Redirect(conf.URLFor("AccountController.Login"), 302) - -} - -func parseHelper(value string) (string, bool) { - - parts := strings.SplitN(value, "|", 3) - - if len(parts) != 3 { - return "", false - } - - vs := parts[0] - timestamp := parts[1] - sig := parts[2] - - h := hmac.New(sha1.New, []byte(conf.GetAppKey())) - fmt.Fprintf(h, "%s%s", vs, timestamp) - - if fmt.Sprintf("%02x", h.Sum(nil)) != sig { - return "", false - } - res, _ := base64.URLEncoding.DecodeString(vs) - return string(res), true - -} - // 登录成功后的操作,如重定向到原始请求页面 func (c *AccountController) LoggedIn(isPost bool) interface{} {