I am trying to handle asynchronous calls in NodeJs. Here is my code:
function getUserFromToken(token) {
decodeJWT(token, function (err, data) {
console.log("Call back Worked");
})
}
function getUserProfile(user_id, username, hashPass, callback) {
let sql = "SELECT first_name, last_name, username FROM User where user_id=? AND username=? AND password=?";
db.query(sql, [user_id, username, hashPass], function (err, result) {
if (err) callback(err, null);
else callback(null, result)
});
}
function decodeJWT(token, cb) {
jwt.verify(token, config.secret, function (err, decoded) {
if (err) res.status(401).send({auth: false, message: miscConstants.INVALID_TOKEN});
const {user_id} = decoded;
const {username} = decoded;
const {hashPass} = decoded;
getUserProfile(user_id, username, hashPass, res, function (err, profile) {
cb(null,'yo');
});
});
}
The callback used in the getUserProfile function works but, it never reaches the console.log("Call back Worked");. Any ideas?