This commit is contained in:
oneao committed 2026-04-19 21:30:51 +08:00
1 parent b6415c0d65
commit 89aaef1d6b
29 files changed
+1118 -277

No files matched your search

+7 -5
View File
@@ -48,8 +48,12 @@ func getManager() *jwtManager {
// Claims(通用结构)
// ==================
type TokenData struct {
UserID int64 `json:"user_id"`
}
type CustomClaims struct {
Data map[string]any `json:"data"`
Data TokenData `json:"data"`
jwt.RegisteredClaims
}
@@ -58,7 +62,7 @@ type CustomClaims struct {
// ==================
// CreateToken 生成 JWT
func CreateToken(ctx context.Context, data map[string]any) (string, error) {
func CreateToken(ctx context.Context, data TokenData) (string, error) {
m := getManager()
return m.createToken(data)
}
@@ -91,7 +95,7 @@ func VerifyToken(ctx context.Context, tokenString string) (*CustomClaims, bool)
// 内部实现
// ==================
func (j *jwtManager) createToken(data map[string]any) (string, error) {
func (j *jwtManager) createToken(data TokenData) (string, error) {
now := time.Now()
claims := &CustomClaims{
@@ -101,8 +105,6 @@ func (j *jwtManager) createToken(data map[string]any) (string, error) {
},
}
// ✅ 只有 >0 才设置过期时间
// -1 / 0 都表示不过期
if j.tokenExpiry > 0 {
claims.ExpiresAt = jwt.NewNumericDate(now.Add(j.tokenExpiry))
}