diff --git a/backend/internal/mildware/auth.go b/backend/internal/mildware/auth.go index 550da71..b10a7d3 100755 --- a/backend/internal/mildware/auth.go +++ b/backend/internal/mildware/auth.go @@ -2,6 +2,7 @@ package mildware import ( "net/http" + "strconv" "strings" "gen2d/internal/logger" @@ -45,7 +46,23 @@ func AuthMiddleware(jwtSecret string) gin.HandlerFunc { } if sub, ok := claims["sub"]; ok { - c.Set("userID", sub) + var userID uint + switch v := sub.(type) { + case float64: + userID = uint(v) + case int: + userID = uint(v) + case int64: + userID = uint(v) + case uint: + userID = v + case string: + num, err := strconv.ParseUint(v, 10, 64) + if err == nil { + userID = uint(num) + } + } + c.Set("userID", userID) } c.Next()