hsun пре 6 месеци
родитељ
комит
36fa5ab9f1
1 измењених фајлова са 12 додато и 0 уклоњено
  1. 12 0
      controllers/base_auth.go

+ 12 - 0
controllers/base_auth.go

@@ -522,6 +522,7 @@ func (c *BaseAuthController) Prepare() {
 					tokenStr := authorization
 					tokenArr := strings.Split(tokenStr, "=")
 					token := tokenArr[1]
+
 					session, err := system.GetSysSessionByToken(token)
 					if err != nil {
 						if utils.IsErrNoRow(err) {
@@ -552,6 +553,17 @@ func (c *BaseAuthController) Prepare() {
 						c.StopRun()
 						return
 					}
+				} else {
+					// Token空了, 以Cookie为准重新登录
+					newLogin, e := services.UserLoginChange(cookieVal)
+					if e != nil {
+						c.JSON(models.BaseResponse{Ret: 408, Msg: "重登录失败,请稍后重试!", ErrMsg: fmt.Sprint(e)}, false, false)
+						c.StopRun()
+						return
+					}
+					c.JSON(models.BaseResponse{Ret: models.BaseRespReLoginErr, Msg: "用户切换,请刷新页面", ErrMsg: "user exchanged", Data: newLogin}, false, false)
+					c.StopRun()
+					return
 				}
 			}