1
我希望每一個他或她登錄。我應該如何在非中間件(Passport.js)中使用req?
我被告知,只有中間件獲得REQ,資源,以及未來參數的時間來更新用戶的IP,但我使用passportjs,這應該是第一位的授權用戶。我應該如何更新用戶數據?
以下是我使用基本策略的passport.js代碼塊。
passport.use(new BasicStrategy(
function(username, password, callback){
User.findOne({username:username}, function(err,user){
if(err){return callback(err);}
//no user found with the email
if(!user){return callback(null, false);}
user.verifyPassword(password, function(err,isMatch){
if(err){ return callback(err);}
// password did not match
if(!isMatch){return callback(null,false);}
//success
// UPDATE USER INFO
user.token = jwt.sign(user.email+Date.now(), "testtoken");//should change later
user.last_login = Date.now();
// I AM TRYING TO UPDATE THIS WITH req.ip
user.last_ip = req.ip;
user.save(function(err, user1){
if(err) return callback(err);
return callback(null,user);
});
});
});
}
));