【发布时间】:2020-11-27 03:54:43
【问题描述】:
我在 Nodejs 中使用 JWT - jsonwebtokens。
我正在创建一个令牌,如果令牌过期,我想抛出一个错误。我的令牌已成功创建,我正在 Expressjs 中的 APIs 中间件中检查令牌是否过期。然后令牌在标头中从 Angular 发送,并在中间件中检查过期。
这就是我创建令牌的方式:
var token = jwt.sign({
id: id,
expiresIn: '2m'
},
'mysecretkey'
);
这就是我的中间件的样子:
var token = req.headers['authorization']
var idToken = token.split(' ')[1]
if(token) {
jwt.verify(idToken, 'myscretkey', (err, decoded) => {
if(err) {
return res.status(400).send('Session expired')
}
next()
})
}
这是我在decoded 收到的内容:
dec: {
id: 'an id',
expiresIn: '2m',
iat: 1596744770
}
在这种情况下,我的令牌即使在 2 分钟后也不会过期。
我怎样才能做到这一点?
谢谢
【问题讨论】:
-
你在使用this library吗?
标签: javascript node.js express jwt jwt-auth