Ошибка типа: req.isAuthenticated не является функцией - PullRequest
0 голосов
/ 04 марта 2020

Я хочу добавить функцию с именем isAuth , и когда я обновляю sh домашнюю страницу, она выдает ошибку TypeError: req.isAuthenticated не является функцией

if (! req.isAuthenticated ()) {^

TypeError: req.isAuthenticated не является функцией

в isAuth (E: \ My Drive \ sr c code \ node.js \ Revision \ regSys \ route \ index. js: 117: 12)

в E: \ My Drive \ sr c code \ node.js \ Revision \ regSys \ node_modules \ hbs \ lib \ hbs. js: 94: 16

в E: \ My Drive \ sr c code \ node.js \ Revision \ regSys \ node_modules \ hbs \ lib \ hbs. js: 85: 9

в FSReqWrap.readFileAfterClose [as oncomplete] (внутренняя / fs / read_file_context. js: 53: 3)

index. js

//isAuthenticated
function isAuth(req, res, next){
  if(! req.isAuthenticated()){
    res.redirect('login')
    return;
  }
  next();
}

узел V: 10.16.1


1 Ответ

0 голосов
/ 05 марта 2020

Я наконец получил это! Проблема была в том, что я назвал isAuth() функция неправильно, это было

//wrong 
router.get('/', function (req, res, next) {
  res.render('index', isAuth, { title: 'Home'});
});

//isAuthenticated
function isAuth(req , res , next){
  if(req.isAuthenticated()){
      res.redirect("/");
      next();
  } else{
      res.redirect("/login");
  }
}

, и это неправильно, , поэтому должно быть

//correcting
router.get('/', isAuth,function (req, res, next) {
  res.render('index', { title: 'Home'});
});
// .........
...