2017-02-16 7 views
2
var fs = require('fs'); 
var jwt = require('jsonwebtoken'); 

var secret = fs.readFileSync('secret.key', 'utf8'); 

var myToken = jwt.sign({foo : 'bar'}, secret, {expiresInMinutes : 1440}, function(err, token) { 
     console.log(token); 
}); 

ここは私のコードです。問題は、myTokenが常に未定義であることです。では、ここで問題はどこにありますか?なぜmyToken変数は常に未定義ですか?

答えて

3

asynchronouslyウェイを使用しています。トークンはコールバック関数に入れられ、jwt.sign関数によって返されません。

jwt.sign({foo : 'bar'}, secret, {expiresInMinutes : 1440}, function(err, token) { 
     console.log(token); 
}); 

あなたが非同期的な方法を使用しない場合、それは次のようになります。

var myToken = jwt.sign({foo : 'bar'}, secret, {expiresInMinutes : 1440}); 

は、スタイルのどちらか一方を選びました。

関連する問題