У меня есть простая форма входа в систему, которая устанавливает сеанс после успешного входа в систему
router.post('/', (req, res) => {
const { username, password } = req.body;
// TODO: Hash password
if (username === 'admin' && password === 'test') {
req.session.user = username;
res.redirect('/dashboard');
} else {
// TODO: Validation
}
});
Перед этим я установил промежуточное ПО:
router.use(sessions({
secret: 'supersecret',
resave: false,
saveUninitialized: false,
cookie: {
sameSite: true,
secure: true,
expires: false
}
}));
После установки session.user
маршрутизатор перенаправляет на /dashboard
, но когда я пытаюсь console.log(req.session.user)
, он возвращает undefined
, а req.session
нет.
router.get('/dashboard', (req, res) => {
console.log(req.session.user);
if (req.session.user) {
Product.find({}, (e, products) => {
if (e) console.error(e);
res.render('dashboard', {
products: products
});
});
} else {
res.redirect('/');
}
});
Кто-нибудь видит, что я делаю неправильно?Вот?Также стоит отметить, что он возвращает правильное значение внутри /
.