refactor(jwt): 更新 JWT 工具函数实现方式 (#6869)
refactor(jwt): 更新 JWT 工具函数实现方式 - 将默认导入 jsonwebtoken 改为解构导入 sign 和 verify 方法
This commit is contained in:
parent
c7c39047de
commit
a854760d26
@ -3,7 +3,7 @@ import type { EventHandlerRequest, H3Event } from 'h3';
|
|||||||
import type { UserInfo } from './mock-data';
|
import type { UserInfo } from './mock-data';
|
||||||
|
|
||||||
import { getHeader } from 'h3';
|
import { getHeader } from 'h3';
|
||||||
import jwt from 'jsonwebtoken';
|
import { sign, verify } from 'jsonwebtoken';
|
||||||
|
|
||||||
import { MOCK_USERS } from './mock-data';
|
import { MOCK_USERS } from './mock-data';
|
||||||
|
|
||||||
@ -17,11 +17,11 @@ export interface UserPayload extends UserInfo {
|
|||||||
}
|
}
|
||||||
|
|
||||||
export function generateAccessToken(user: UserInfo) {
|
export function generateAccessToken(user: UserInfo) {
|
||||||
return jwt.sign(user, ACCESS_TOKEN_SECRET, { expiresIn: '7d' });
|
return sign(user, ACCESS_TOKEN_SECRET, { expiresIn: '7d' });
|
||||||
}
|
}
|
||||||
|
|
||||||
export function generateRefreshToken(user: UserInfo) {
|
export function generateRefreshToken(user: UserInfo) {
|
||||||
return jwt.sign(user, REFRESH_TOKEN_SECRET, {
|
return sign(user, REFRESH_TOKEN_SECRET, {
|
||||||
expiresIn: '30d',
|
expiresIn: '30d',
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
@ -40,7 +40,7 @@ export function verifyAccessToken(
|
|||||||
}
|
}
|
||||||
const token = tokenParts[1] as string;
|
const token = tokenParts[1] as string;
|
||||||
try {
|
try {
|
||||||
const decoded = jwt.verify(
|
const decoded = verify(
|
||||||
token,
|
token,
|
||||||
ACCESS_TOKEN_SECRET,
|
ACCESS_TOKEN_SECRET,
|
||||||
) as unknown as UserPayload;
|
) as unknown as UserPayload;
|
||||||
@ -61,7 +61,7 @@ export function verifyRefreshToken(
|
|||||||
token: string,
|
token: string,
|
||||||
): null | Omit<UserInfo, 'password'> {
|
): null | Omit<UserInfo, 'password'> {
|
||||||
try {
|
try {
|
||||||
const decoded = jwt.verify(token, REFRESH_TOKEN_SECRET) as UserPayload;
|
const decoded = verify(token, REFRESH_TOKEN_SECRET) as UserPayload;
|
||||||
const username = decoded.username;
|
const username = decoded.username;
|
||||||
const user = MOCK_USERS.find(
|
const user = MOCK_USERS.find(
|
||||||
(item) => item.username === username,
|
(item) => item.username === username,
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user