如何使用 passport-local 登出方法显示一条闪现消息?

问题描述 投票:0回答:1

尝试使用本地护照使用 req.logout() 方法时,我无法显示“您已成功注销”的闪现消息。

这是我目前拥有的,它将重定向到登录页面但不显示消息。

logout: (req, res, next) => {
      req.logout((err) => {
         if (err) {
            return next(err)
         }
      })
      req.flash('success_msg', 'You have successfully logged out')
      res.redirect('/login')
   }

如果我注释掉 req.logout 代码,将显示 flash 消息并重定向到登录页面。

logout: (req, res, next) => {
      // req.logout((err) => {
      //    if (err) {
      //       return next(err)
      //    }
      // })
      req.flash('success_msg', 'You have successfully logged out')
      res.redirect('/login')
   }

我想知道如何使用 req.logout() 并让闪现消息显示给用户。

express ejs passport-local flash-message
1个回答
0
投票

问题是

req.flash()
res.redirect()
需要在
req.logout()
回调内部,而在我上面的代码中它在回调之外。

logout: (req, res, next) => {
  req.logout((err) => {
    if (err) {
      return next(err)
    }
    req.flash('success_msg', 'You have successfully logged out')
    res.redirect('/login')
  })
}
© www.soinside.com 2019 - 2024. All rights reserved.