Как узнать, зарегистрирован ли пользователь в файле passport.js?

Я читал passport.js информацию и образцы в течение двух дней, но я не уверен, что после этого я сделал весь процесс аутентификации.

Как я узнаю, что я зарегистрирован, например, у меня будет панель навигации с кнопкой входа или выхода из системы, есть ли какая-то переменная, например, код ниже?

 if (login)  else  

Если пользователь вошел в систему, passport.js создаст объект user в req для каждого запроса в express.js , который вы можете проверить на наличие в любом промежуточном программном обеспечении:

 if (req.user) { // logged in } else { // not logged in } 

Вы можете создать простую промежуточную программу express.js для этого, которая проверит, зарегистрирован ли пользователь, а если нет – будет перенаправлен на страницу /login :

 function loggedIn(req, res, next) { if (req.user) { next(); } else { res.redirect('/login'); } } 

И используйте его:

 app.get('/orders', loggedIn, function(req, res, next) { // req.user - will exist // load user orders and render them }); 

Если вы хотите использовать его в своих шаблонах, так как ваш пример кода указывает на то, что вы можете создать некоторое промежуточное программное обеспечение, такое как это:

 app.use(function (req, res, next) { res.locals.login = req.isAuthenticated(); next(); }); 

Поместите этот код где-нибудь после установки паспорта.

И затем используйте его в своем шаблоне (пример swig)

 {% if login %}  {% else %}  {% endif %} 
Interesting Posts

Каковы значения верхнего, левого, болотного или правого значения по умолчанию, когда используется позиция: абсолютная?

Как добавить строку в значение столбца в MySQL?

ограничить edittext одной строкой

Vue 2 – Мутирующий реквизит vue-warn

отладочная информация не может быть найдена или не соответствует визуальной студии

Excel: Мне нужна формула, которая будет считать месяцы между двумя датами. Если это 1-15, то это будет полмесяца. Есть идеи?

Как я могу перечислять все classы в пакете и добавлять их в список?

Как я могу распечатать пиксели подстановки PDF для синих пикселей?

Обязательный атрибут HTML5

Как переписать выходной каталог в искру

Angular2 – как вызвать функцию компонента извне приложения

Интеграция с андроидной фейсбукой

Почему C # ограничивает набор типов, которые могут быть объявлены как const?

Пересылка Ipv6 6in4

Как Terminal.app обнаруживает изменение параметров терминала?

Давайте будем гением компьютера.