我在nodeJS中很新,遇到以下問題:我在我的一個控制器中定義了一個函數,我想驗證一個JSON-Web-Token。我用了以下功能:如何在自己的函數中定義回調函數? NodeJS
exports.validate = function (token, cb) {
jwt.verify(token, secretToken, cb(err, decoded));
}
但每次我想運行它,給人的NodeJS我的錯誤,那就是犯錯「沒有定義?在jwt-Example中有以下示例:
// verify a token symmetric
jwt.verify(token, 'shhhhh', function(err, decoded) {
console.log(decoded.foo)
});
所以某處顯然我出錯了,但我不知道是什麼。我也不知道要尋找什麼...我已經做了一些谷歌搜索,但迄今沒有任何幫助。
我很樂意聽取您的意見。
問候
//編輯:這就是我調用函數:
AuthController.validate(req.headers['api-token'], function(err, decoded){
if(err){ console.log('Error: ', err);
res.status(401); next();
} else if(decoded) {
console.log('Success: ', decoded);
next();
}
})
你爲什麼要調用這個函數? – SLaks
我不明白?你的意思是哪個功能?就像我說的,我對nodeJS很新。也許我沒有正確理解回調的概念。你會如何做到這一點? – mietzekotze
這裏沒有特定的節點,回調是一種非常常見的JavaScript模式。 – Quentin