Iat和exp不存在于js web令牌中

时间:2015-08-19 09:52:03

标签: jwt

我从数据检索表单生成一个令牌,它没有exp和iat字段,因此它不检查过期时间并始终验证令牌。而当我在jwt.io上解码令牌时,它表示无效令牌。 你能告诉我解决这个问题的方法吗?这是我的代码  var token=jwt.sign(members,app.get('superSecret'),{ expiresInMinutes:40 });

我正在使用快递js

1 个答案:

答案 0 :(得分:0)

    var token = jwt.sign({username:req.body.UserName,otherdatakey:value},'SECRET_KEY', {expiresInSeconds:exp});

    jwt.verify(req.headers.authorization, 'SECRET_KEY', { algorithms: ['HS256'] },function(err, decoded) {
                if(err && err.name=='TokenExpiredError')
                    res.status(401).send('Unauthorized Access - Token Expired'); //no need to log
                else if(err)
                    _error(401, 'Unauthorized Access',err, res);
                else
                {

                    req.token=decoded;
                    next();
                }   
}