Browse Source

新增数据管理员数据

userxzz 8 months ago
parent
commit
ffc2267389

+ 8 - 4
game/game_cluster/nodes/webadmin/router/middleware.go

@@ -7,11 +7,11 @@ import (
 	"net/http"
 	"time"
 
+	"github.com/mhaya/game/game_cluster/internal/constant"
 	"github.com/mhaya/game/game_cluster/internal/mdb/models"
 	"go.mongodb.org/mongo-driver/bson"
 
 	"github.com/gin-gonic/gin"
-	"github.com/mhaya/game/game_cluster/internal/constant"
 	"github.com/mhaya/game/game_cluster/internal/mdb"
 )
 
@@ -26,6 +26,9 @@ func Auth() gin.HandlerFunc {
 		}
 		result, err := mdb.RDB.Get(context.Background(), tokenString).Result()
 		if err != nil {
+			c.AbortWithStatusJSON(http.StatusUnauthorized, gin.H{
+				"msg": "token is empty",
+			})
 			return
 		}
 		if result == "" {
@@ -37,15 +40,16 @@ func Auth() gin.HandlerFunc {
 		// 获取请求URL
 		url := c.Request.URL.Path
 		s, _ := mdb.RDB.HGet(context.Background(), "admin::token::"+tokenString, url).Result()
-		admin, _ := mdb.RDB.HGet(context.Background(), "admin::token::"+tokenString, constant.AdminAccess).Result()
+		ss, _ := mdb.RDB.HGet(context.Background(), "admin::token::"+tokenString, constant.AdminAccess).Result()
+		fmt.Println(ss)
 		// 检查是否有权限
-		if s == "" && admin == "" {
+		if s == "" && result == "" {
 			c.AbortWithStatusJSON(http.StatusUnauthorized, gin.H{
 				"msg": "token is no auth",
 			})
 			return
 		}
-		if admin == "" {
+		if result == "" {
 			if err := checkIP(c); err != nil {
 				c.AbortWithStatusJSON(http.StatusUnauthorized, gin.H{
 					"msg": "ip is no auth",

+ 3 - 0
game/game_cluster/nodes/webadmin/service/admin.go

@@ -103,6 +103,8 @@ func (a *Admin) Login(ctx *gin.Context, username string, password string) (*enti
 func (a *Admin) loginAuthSetRoleRedis(roleID, generateToken string) error {
 	if roleID == constant.AdminAccess {
 		mdb.RDB.HSet(context.Background(), "admin::token::"+generateToken, constant.AdminAccess, 1)
+		mdb.RDB.Expire(context.Background(), "admin::token::"+generateToken, 24*time.Hour).Err()
+
 		return nil
 	}
 
@@ -143,6 +145,7 @@ func (a *Admin) loginAuthSetRoleRedis(roleID, generateToken string) error {
 	for _, v := range accessList {
 		mdb.RDB.HSet(context.Background(), "admin::token::"+generateToken, v.URL, 1)
 	}
+	mdb.RDB.Expire(context.Background(), "admin::token::"+generateToken, 24*time.Hour).Err()
 	return nil
 
 }