Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/33.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript FailureFlash与Passportjs和Express_Javascript_Node.js_Express_Passport.js - Fatal编程技术网

Javascript FailureFlash与Passportjs和Express

Javascript FailureFlash与Passportjs和Express,javascript,node.js,express,passport.js,Javascript,Node.js,Express,Passport.js,Im试图在登录失败时闪烁错误消息(ExpressJS 4.2和PassportJS) 我的代码是: //管理路线===== router.get('/admin', function(req, res) { res.render('admin', {message: '', user: ''}); }); router.post('/admin', passport.authenticate('loginAdmin',{ successRedirect: '/panel',

Im试图在登录失败时闪烁错误消息(ExpressJS 4.2和PassportJS)

我的代码是:

//管理路线=====

router.get('/admin', function(req, res) {

    res.render('admin', {message: '', user: ''});

});
router.post('/admin', passport.authenticate('loginAdmin',{  successRedirect: '/panel',
                                                failureRedirect: '/admin',
                                                failureFlash: true })

);
//护照本地策略=====

passport.use('loginAdmin', new LocalStrategy(

  function(username, password, done) {



    modeloUsuario.findOne({ nombre: username, password: password }, function(err, user) {



      if (err) { return done(err); }

      if (!user) {

        return done(null, false, {message: 'Incorrect username.'}); //Error to show
      }



      return done(null, user);
    });
  }
));
但是/admin的get请求中的“消息”永远不会被替换为“不正确的用户名” 我做错了吗?
提前谢谢

看起来您正在重定向回
/admin
,而在
/admin
路由处理程序中,您正在将消息设置为空字符串。您的管理员路由处理程序在您的passport策略后触发,因此您正在清除消息

你得到了什么失败信息?@bencripps,这不是很有用。