package config import ( "fmt" "lone-services/pkg/utils" ) // JWTAuth 由服务配置初始化的 access / refresh 两套 JWT。 type JWTAuth struct { Access *utils.JWT Refresh *utils.JWT } func LoadJWTAuth() (*JWTAuth, error) { issuer := utils.GetConfigString("jwt.issuer") if issuer == utils.StringEmpty { issuer = "lone-user" } access, err := utils.NewJWT( utils.GetConfigString("jwt.access_secret"), issuer, utils.GetConfigInt("jwt.access_ttl"), ) if err != nil { return nil, fmt.Errorf("jwt access: %w", err) } refresh, err := utils.NewJWT( utils.GetConfigString("jwt.refresh_secret"), issuer, utils.GetConfigInt("jwt.refresh_ttl"), ) if err != nil { return nil, fmt.Errorf("jwt refresh: %w", err) } return &JWTAuth{ Access: access, Refresh: refresh, }, nil }