如何检查我的令牌是否已过期?
var token = jwt.sign(user,app.get('superSecret'),{
expiresIn : 2
});
我假设您使用的是documented here的jsonwebtoken包>
如果是这种情况,请查看jwt.verify
方法:
jwt.verify(token, 'shhhhh', function(err, decoded) { if (err) { /* err = { name: 'TokenExpiredError', message: 'jwt expired', expiredAt: 1408621000 } */ } });
简而言之:检查该方法的错误。如果这是TokenExpiredError,请猜测是什么...令牌已过期。
var isExpiredToken = false;
var dateNow = new Date();
if(decodedToken.exp < dateNow.getTime()/1000)
{
isExpiredToken = true;
}
var isExpiredToken = false;
var dateNow = new Date();
if(decodedToken.exp < dateNow.getTime())
{
isExpiredToken = true;
}
var isExpiredToken = false;
var seconds = 1000;
var d = new Date();
var t= d.getTime();
if (decoded.exp < Math.round(t / seconds)) {
// code...
isExpiredToken = true;
}
您需要设置主机当前时间以比较验证功能示例中的到期日期:
最好的方法是在页面或包装的父组件中设置代码。您需要删除旧的(扩展的)令牌。