fix(用户绑定): 修复生成JWT token时的时间戳和过期时间参数错误
Some checks failed
Build docker and publish / build (20.15.1) (push) Failing after 26s

使用time.Now().Unix()替代now变量,确保获取当前时间戳
添加LoginType参数以明确登录类型为设备
This commit is contained in:
shanshanzhong 2025-10-28 21:10:28 -07:00
parent b70738b434
commit 63d90fba72

View File

@ -273,12 +273,20 @@ func (l *BindEmailWithVerificationLogic) generateTokenForUser(userId int64) (str
accessExpire := l.svcCtx.Config.JwtAuth.AccessExpire
sessionId := fmt.Sprintf("device_transfer_%d_%d", userId, now)
// jwtToken, err := jwt.NewJwtToken(
// l.svcCtx.Config.JwtAuth.AccessSecret,
// now,
// accessExpire,
// jwt.WithOption("UserId", userId),
// jwt.WithOption("SessionId", sessionId),
// )
jwtToken, err := jwt.NewJwtToken(
l.svcCtx.Config.JwtAuth.AccessSecret,
now,
accessExpire,
time.Now().Unix(),
l.svcCtx.Config.JwtAuth.AccessExpire,
jwt.WithOption("UserId", userId),
jwt.WithOption("SessionId", sessionId),
jwt.WithOption("LoginType", "device"),
)
if err != nil {
l.Errorw("生成JWT token失败", logger.Field("error", err.Error()), logger.Field("user_id", userId))