diff --git a/backend/pkg/jwt/jwt.go b/backend/pkg/jwt/jwt.go index 4f3e588..23a2086 100644 --- a/backend/pkg/jwt/jwt.go +++ b/backend/pkg/jwt/jwt.go @@ -2,6 +2,7 @@ package jwt import ( "errors" + "log" "time" "verification-platform-backend/internal/config" @@ -23,6 +24,9 @@ func GenerateToken(userID uint, username, role string) (string, error) { expireHours = 24 } + jwtSecret := config.GetString("app.jwt_secret") + log.Printf("[JWT] GenerateToken using jwt_secret: %s (length: %d)", jwtSecret, len(jwtSecret)) + expiresAt := time.Now().Add(time.Hour * time.Duration(expireHours)) claims := Claims{ @@ -38,16 +42,20 @@ func GenerateToken(userID uint, username, role string) (string, error) { } token := jwt.NewWithClaims(jwt.SigningMethodHS256, claims) - return token.SignedString([]byte(config.GetString("app.jwt_secret"))) + return token.SignedString([]byte(jwtSecret)) } // ParseToken 解析JWT令牌 func ParseToken(tokenString string) (*Claims, error) { + jwtSecret := config.GetString("app.jwt_secret") + log.Printf("[JWT] ParseToken using jwt_secret: %s (length: %d)", jwtSecret, len(jwtSecret)) + token, err := jwt.ParseWithClaims(tokenString, &Claims{}, func(token *jwt.Token) (interface{}, error) { - return []byte(config.GetString("app.jwt_secret")), nil + return []byte(jwtSecret), nil }) if err != nil { + log.Printf("[JWT] ParseToken error: %v", err) return nil, err }