aradığında, Serialize ve Deserialize denildiğinde, test için alert(user.id)
koydum, ancak hiçbir işlem yapılmadı. Serialize ve deserialize çağrıları, pasaport js
function(req, email, password, done)
, çağırmak nasılprocess.nextTick()
oynamak user
nesne passport.serializeUser(function(user, done){...
yılında aldığı itibaren
- : Ben bazı sorularınız (isim, e-posta, şifre, adres, cep). İşte
app.post('/login',
passport.authenticate('local'),
function(req, res) {
// If this function gets called, authentication was successful.
// `req.user` contains the authenticated user.
res.redirect('/users/' + req.user.username);
});
yansıttığınız Bu kodu bulmak ve onu gibi yukarıda değil görünüyor olmadığını kontrol edin Eğer bir kullanıcının kimliğini doğrulamak zaman
//config/passport.js
var LocalStrategy = require('passport-local').Strategy;
var User = require('../app/models/user');
module.exports = function(passport) {
passport.serializeUser(function(user, done) {
alert(user.id);//// Here is my testing alert
done(null, user.id);
});
passport.deserializeUser(function(id, done) {
User.findById(id, function(err, user) {
done(err, user);
});
});
passport.use('local-signup', new LocalStrategy({
usernameField : 'email',
passwordField : 'password',
passReqToCallback : true
},
function(req, email, password, done) {
process.nextTick(function() {
User.findOne({ 'local.email' : email }, function(err, user) {
if (err)
return done(err);
if (user) {
return done(null, false, req.flash('signupMessage', 'That email is already taken.'));
} else {
var newUser = new User();
newUser.local.email = email;
newUser.local.password = newUser.generateHash(password);
newUser.save(function(err) {
if (err)
throw err;
return done(null, newUser);
});
}
});
});
}));
}
"passport.initialize() ve passport.session() ..." dediğinizde bir sorum var, eğer seri hale getirilmiş bir kullanıcı bulunursa, serializeUser ** kullanıcı kimliğini req.user 'e yüklemeleri gerekir sunucuda (whe mongodb kullanarak kullanıcı, mongodb içinde varsa). ** "Kullanıcı kimliği nereden geliyor ve" kullanıcı mongodb içinde bulunuyorsa "dediğinizde, otomatik olarak Kullanıcı modeline bakar mı? –
Kodunuzun yeniden düzenlenmesi" if (req.url.match ('/ xxx ')) passport.session(); sonraki(); ' – NERDYLIZARD