1
嗨我試圖做本地登錄使用passport.Everything運作良好,但我希望能夠顯示用戶名一旦用戶身份驗證這裏是我的代碼使用Node.js和mysql:如何使用護照發送json響應給broswe
passport.use(new LocalStrategy({
usernameField: 'email',
passwordField: 'password',
passReqToCallback: true // allows us to pass back the entire request to the callback
},
function(req, email, password, done) {
var status = [];
console.log('-----');
connection.query('SELECT username FROM user WHERE email ="' + email + '"', function(err, rows) {
if (err)
return done(err);
if (rows.length) {
status.push({
username: rows[0].username
});
done(null, JSON.stringify(status)); //output as JSON
//console.log(JSON.stringify(status));
//res.render ('"status":'+JSON.stringify(status));
}
});
}
));
app.post('/login', passport.authenticate('local', {
successRedirect: '/loginSuccess',
failureRedirect: '/loginFailure',
failureFlash: false
}));
app.get('/loginFailure', function(req, res, next) {
res.send('Failed to authenticate');
});
app.get('/loginSuccess', function(req, res, next) {
res.send('Successfully authenticated');
});
這是正確的答案。 – rdegges 2014-10-28 17:42:10