логин Connect-Flash - PullRequest
       10

логин Connect-Flash

0 голосов
/ 14 ноября 2018

Я пытаюсь использовать функцию req.flash в локальной стратегии.При неудачном входе в систему пользователь перенаправляется на ссылку сбоя с правильным флэш-сообщением, но сеанс устанавливается.Фрагмент кода, как показано ниже

passport.use(new localStrategy({
    usernameField : 'username',
    passwordField : 'password',
    passReqToCallback : true
   }, function(req,username,password,done) {
    console.log(username + " " + password);
    connection.query(
        "SELECT cust_password from customer WHERE cust_email = ?",
        [username],
        function(err,result,fields) {
            console.log("db password" + JSON.stringify(result));
            if(err) {
                return done(null,false);
            }
            else if(result[0].cust_password != password) {
                console.log("incorrect");
                return done(null,false,req.flash('error','wrong password'));
            }
            else {
                return done(null,true);
            }
        });
    //display error message if not successfully logged in pending
    }       
));


app.post("/login",passport.authenticate(
    'local',{
        successRedirect : '/success',
        failureRedirect : '/fail',
        failureFlash : true
    }
));

app.get("/success",function(req,res)
{
    res.send("succes");
});

app.get("/fail",function(req,res)
{
    //req.flash('error','wrong password');
    res.render("error",{ message : req.flash('error')});
    //res.send("error");
});
...