优化 token 处理逻辑,统一过期时间字段命名
This commit is contained in:
@@ -66,8 +66,8 @@ export class User extends Model {
|
||||
accessToken: token.accessToken,
|
||||
refreshToken: token.refreshToken,
|
||||
token: token.accessToken,
|
||||
accessTokenExpiresAt: token.accessTokenExpiresAt,
|
||||
refreshTokenExpiresAt: token.refreshTokenExpiresAt,
|
||||
refreshTokenExpiresIn: token.refreshTokenExpiresIn,
|
||||
accessTokenExpiresIn: token.accessTokenExpiresIn,
|
||||
};
|
||||
}
|
||||
/**
|
||||
|
||||
@@ -76,9 +76,9 @@ interface Store<T> {
|
||||
|
||||
type TokenData = {
|
||||
accessToken: string;
|
||||
accessTokenExpiresAt: number;
|
||||
accessTokenExpiresIn?: number;
|
||||
refreshToken?: string;
|
||||
refreshTokenExpiresAt?: number;
|
||||
refreshTokenExpiresIn?: number;
|
||||
}
|
||||
export class RedisTokenStore implements Store<OauthUser> {
|
||||
redis: Redis;
|
||||
@@ -170,20 +170,20 @@ export class RedisTokenStore implements Store<OauthUser> {
|
||||
|
||||
await this.set(accessToken, JSON.stringify(value), expire);
|
||||
await this.set(userPrefix + ':token:' + accessToken, accessToken, expire);
|
||||
let refreshTokenExpiresAt = Math.min(expire * 7, 60 * 60 * 24 * 30, 60 * 60 * 24 * 365); // 最大为一年
|
||||
let refreshTokenExpiresIn = Math.min(expire * 7, 60 * 60 * 24 * 30, 60 * 60 * 24 * 365); // 最大为一年
|
||||
if (refreshToken) {
|
||||
// 小于7天, 则设置为7天
|
||||
if (refreshTokenExpiresAt < 60 * 60 * 24 * 7) {
|
||||
refreshTokenExpiresAt = 60 * 60 * 24 * 7;
|
||||
if (refreshTokenExpiresIn < 60 * 60 * 24 * 7) {
|
||||
refreshTokenExpiresIn = 60 * 60 * 24 * 7;
|
||||
}
|
||||
await this.set(refreshToken, JSON.stringify(value), refreshTokenExpiresAt);
|
||||
await this.set(userPrefix + ':refreshToken:' + refreshToken, refreshToken, refreshTokenExpiresAt);
|
||||
await this.set(refreshToken, JSON.stringify(value), refreshTokenExpiresIn);
|
||||
await this.set(userPrefix + ':refreshToken:' + refreshToken, refreshToken, refreshTokenExpiresIn);
|
||||
}
|
||||
return {
|
||||
accessToken,
|
||||
accessTokenExpiresAt: expire,
|
||||
accessTokenExpiresIn: expire,
|
||||
refreshToken,
|
||||
refreshTokenExpiresAt,
|
||||
refreshTokenExpiresIn: refreshTokenExpiresIn,
|
||||
}
|
||||
}
|
||||
async delKeys(keys: string[]) {
|
||||
|
||||
Reference in New Issue
Block a user