2

node.js に jsonwebtoken パッケージを使用しています。

そのようなトークンを作成します:

var token = jwt.sign(user, tokenSecret, {expiresInMinutes: 1});

そのように確認します:

jwt.verify(token, tokenSecret, function(err, decoded) {
    if(err) return done(new Error('Invalid authentication!'));
    if(!decoded) return done(null, false);

    return done(null, decoded, { scope: 'all'});
});

ただし、トークンが期限切れになることはありません(「リクエスト」の間に数分待ちました)。

4

1 に答える 1

4

わかりました。トークンを作成する前に、ユーザー オブジェクトをダンプしてみてください。このようなもの:

db.user.find(query, function(user){
    var userInfo = {
        id: user.id,
        name: user.name,
        role: user.role
    }

    return jwt.sign(userInfo, tokenSecret, {expiresInMinutes: 1});
})
于 2015-03-05T10:41:45.530 に答える