ValidationError: "expiresInMinutes" не разрешено NodeJs JsonWebToken
Я использую NodeJs с модулем JsonWebtoken.
Я столкнулся с этой ошибкой при вызове метода знака json web token
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
});
}
Ответы
Ответ 1
Хорошо, я нашел, что из https://www.npmjs.com/package/jsonwebtoken
Вы должны вызвать expiresIn, а не expiresInMinutes.
var token = jwt.sign(user, req.app.get('jwtTokenSecret'), {
expiresIn : 60*60*24
});
Здесь значение expiresIn
измеряется в секундах, а не в минутах, поэтому значение должно быть правильно вставлено.
Ответ 2
expiresInMinutes
был устаревшим, вы должны использовать expiresIn: '1440m'
например
Ответ 3
expiresInMinutes
устарел, используйте expiresIn
. Из docs:
expiresIn
: выражается в секундах или строка, описывающая временной интервал rauchg/ms. Например: 60, "2 дня", "10h", "7d"