diff --git a/internal/auth/handler.go b/internal/auth/handler.go index ba18f4c..07e263f 100644 --- a/internal/auth/handler.go +++ b/internal/auth/handler.go @@ -89,13 +89,12 @@ func (h *Handler) VerifyToken(c *fiber.Ctx) error { return c.Status(fiber.StatusBadRequest).JSON(fiber.Map{"error": "token 필드가 필요합니다"}) } - userID, username, err := h.svc.VerifyToken(req.Token) + username, err := h.svc.VerifyToken(req.Token) if err != nil { return c.Status(fiber.StatusUnauthorized).JSON(fiber.Map{"error": err.Error()}) } return c.JSON(fiber.Map{ - "userId": userID, "username": username, }) } diff --git a/internal/auth/service.go b/internal/auth/service.go index 5cd6053..80cd335 100644 --- a/internal/auth/service.go +++ b/internal/auth/service.go @@ -92,8 +92,8 @@ func (s *Service) Register(username, password string) error { }) } -// VerifyToken validates a JWT and its Redis session, returning (userID, username, error). -func (s *Service) VerifyToken(tokenStr string) (uint, string, error) { +// VerifyToken validates a JWT and its Redis session, returning (username, error). +func (s *Service) VerifyToken(tokenStr string) (string, error) { token, err := jwt.ParseWithClaims(tokenStr, &Claims{}, func(t *jwt.Token) (any, error) { if _, ok := t.Method.(*jwt.SigningMethodHMAC); !ok { return nil, fmt.Errorf("unexpected signing method") @@ -101,21 +101,21 @@ func (s *Service) VerifyToken(tokenStr string) (uint, string, error) { return []byte(config.C.JWTSecret), nil }) if err != nil || !token.Valid { - return 0, "", fmt.Errorf("유효하지 않은 토큰입니다") + return "", fmt.Errorf("유효하지 않은 토큰입니다") } claims, ok := token.Claims.(*Claims) if !ok { - return 0, "", fmt.Errorf("토큰 파싱 실패") + return "", fmt.Errorf("토큰 파싱 실패") } key := fmt.Sprintf("session:%d", claims.UserID) stored, err := s.rdb.Get(context.Background(), key).Result() if err != nil || stored != tokenStr { - return 0, "", fmt.Errorf("만료되었거나 로그아웃된 세션입니다") + return "", fmt.Errorf("만료되었거나 로그아웃된 세션입니다") } - return claims.UserID, claims.Username, nil + return claims.Username, nil } func (s *Service) EnsureAdmin(username, password string) error {