У меня есть маршрут, который перенаправляет после успешного входа в системеЭкспресс перенаправление не меняет req.url
app.post('/login', function(req, res){
if(req.body.password === Server.cfg.auth.userPass) {
req.session.user = {nick: req.body.username, pass: req.body.password}
res.redirect('/chat')
} else {
res.render('user/login', { locals: { error: 'Invalid password' } })
}
})
Перенаправление, кажется, работает, как страница обновляются с правильно оказанным файлом нефрит. Тем не менее, url все еще говорит/login, и моя переменная pageTitle (устанавливается через шаблонные vars) тоже не изменяется. Если я обновляю страницу после перенаправления, все изменится так, как должно быть. Только после перенаправления он не меняется.
Не следует ли/чат обернуть в кавычки? res.redirect ("/ chat")? – alessioalex
yesh, спасибо, опечатка при вводе вопроса :) –
Можете ли вы попробовать поставить 'req.method = 'GET';' перед res.redirect? Я знаю, что у меня была аналогичная проблема с перенаправлением на POST-маршруте, и в этот момент это была ошибка в Express. – alessioalex