以下程序使用passportjs進行用戶名/密碼驗證。我不會犯我犯的錯誤,但我總是重定向到失敗頁面,即返回到登錄頁面。驗證失敗,護照中間件不會被調用
var passport = require('passport')
, LocalStrategy = require('passport-local').Strategy
, express = require('express');
var app = express();
app.listen(3000);
app.use(express.static(__dirname+'/public'));
app.use(passport.initialize());
app.use(passport.session());
passport.use(new LocalStrategy(
function(username, password, done) {
console.log(username + ':username');
console.log(password + ':password');
return done(null, [{username:'foo'}]);
}
));
app.get('/login',(req,resp) => {
var options = {
root: __dirname + '/public/'
};
resp.sendFile('login.html',options);
});
app.post('/login',
passport.authenticate('local', { successRedirect: '/',failureRedirect: '/login'})
);
我想了解的passportjs
的工作,我看到中間件passport.use(new LocalStrategy(
永遠不會被調用。我不知道原因,但可能是失敗的根源。
仍然沒有進入中間件。 –