繁体   English   中英

ValidationError:“expiresInMinutes”不允许NodeJs JsonWebToken

[英]ValidationError: “expiresInMinutes” is not allowed NodeJs JsonWebToken

我正在使用NodeJs和JsonWebtoken模块。

我在调用json web token的sign方法时遇到此错误

ValidationError:不允许使用“expiresInMinutes”

var jwt = require('jsonwebtoken');

exports.authenticate = function(req, res, next) {
    var user = {"Name":"Abdul"} //static data for test purpose.

    var token = jwt.sign(user, req.app.get('jwtTokenSecret'), {
          expiresInMinutes: 1440 // expires in 24 hours
        });

        // return the information including token as JSON
        res.json({
          success: true,
          message: 'Enjoy your token!',
          token: token
        });

}

好的,我从https://www.npmjs.com/package/jsonwebtoken找到了

你必须调用expiresIn而不是expiresInMinutes

 var token = jwt.sign(user, req.app.get('jwtTokenSecret'), {
           expiresIn : 60*60*24
         });

这里expiresIn的值是以秒为单位而不是分钟来衡量的,因此必须正确地输入值。

expiresInMinutes已被弃用,您应该使用expiresIn: '1440m'

expiresInMinutes已过时,使用expiresIn代替。 来自文档

expiresIn :以秒表示或描述时间跨度rauchg / ms的字符串。 例如:60,“2天”,“10h”,“7d”

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM