我正在尝试在我的网站上实现刷新令牌概念。
如果我理解正确,刷新令牌应该是用户获取新令牌的唯一标识符(令牌仅在 15 分钟内有效)。
我正在使用customId
包在登录时为每个用户生成一个刷新令牌。
令牌过期时。我向端点发送一个请求,以根据refresh_token
为每个用户提供的内容生成一个新令牌。
我正在使用 nuxtauth
模块。
try {
const tokenUser = await User.findOne({
refresh: req.body.refresh_token
})
// console.log(tokenUser)
const newToken = await jwtr.sign({
iu: tokenUser._id.toString()
},
'SUPERSECERT', {
expiresIn: '5000' // Testing
}
);
return res.json({
token: newToken
});
} catch (e) {
return res.status(401).send('unauthorized');
}
我这样做正确吗?或者我应该存储一个新创建的 jwt 令牌refresh_token
而不是一个随机的唯一字符串?还是我错过了有关刷新令牌的一些信息?