1
0

feat: 更新代码

This commit is contained in:
TsMask
2023-10-20 20:12:11 +08:00
parent bbdced9633
commit d63db9dd6c
14 changed files with 274 additions and 60 deletions

View File

@@ -12,18 +12,19 @@ import (
// SessionToken 设置登录会话-兼容旧登录方式
func SessionToken(username, sourceAddr string) bool {
token, _ := redis.Get("", "session_token")
if token != "" {
se, err := dborm.XormUpdateSessionShakeTime(token)
if se.AccountId != username || err != nil {
// 过期时间单位秒 配置1800是半小时
expireTime := time.Duration(int64(libConfig.GetExpiresFromConfig())) * time.Second
redis.SetByExpire("", "session_token", token, expireTime)
return true
}
}
token = oauth.GenRandToken("omc") // Generate new token to session ID
// token, _ := redis.Get("", "session_token")
// if token != "" {
// se, err := dborm.XormUpdateSessionShakeTime(token)
// if se.AccountId != username || err != nil {
// // 过期时间单位秒 配置1800是半小时
// expireTime := time.Duration(int64(libConfig.GetExpiresFromConfig())) * time.Second
// redis.SetByExpire("", "session_token", token, expireTime)
// return true
// }
// }
// 不管原先的登录情况直接插入写入覆盖redis中session
//
token := oauth.GenRandToken("omc") // Generate new token to session ID
affected, err := dborm.XormInsertSession(username, sourceAddr, token, libConfig.GetExpiresFromConfig(), libConfig.GetYamlConfig().Auth.Session)
if err != nil {
logger.Errorf("SessionToken XormInsertSession err %v", err)

View File

@@ -1,8 +1,10 @@
package session
import (
"ems.agt/src/framework/redis"
"time"
libConfig "ems.agt/restagent/config"
"ems.agt/src/framework/redis"
"github.com/gin-gonic/gin"
)
@@ -11,7 +13,10 @@ func SessionHeader() gin.HandlerFunc {
return func(c *gin.Context) {
// 读取登录生成的会话token
token, err := redis.Get("", "session_token")
if err == nil {
if token != "" || err == nil {
// 过期时间单位秒 配置1800是半小时
expireTime := time.Duration(int64(libConfig.GetExpiresFromConfig())) * time.Second
redis.SetByExpire("", "session_token", token, expireTime)
c.Request.Header.Set("Accesstoken", token)
}