Я искал ответы на вопросы Переполнение стека ; не сработало ... Почему res.location(path)
не работает? Мой Location-header не меняется. Нормальный рендеринг работает нормально.
Могу добавить, что в конечном коде я хочу отобразить страницу. Итак, я хочу заменить res.end()
на res.render('app', {...})
и использовать handlebars.js для рендеринга.
Код, который не работает должным образом :
app.get('/sub-link/:wildcard', (req, res) => {
res.location('/new-header');
res.end();
});
Я читал документацию ; не смог найти причину. Единственное, что я обнаружил, это может быть проблема, это браузер:
После кодирования URL, если он еще не закодирован, Express передает
указанный URL-адрес для браузера в заголовке Location, без каких-либо
проверка.
Браузеры берут на себя ответственность за получение намеченного URL-адреса из
текущий URL или ссылающийся URL, а также URL, указанный в
Заголовок местоположения; и соответственно перенаправить пользователя.
- Я пробовал это с последним Node.js, совместимым с Firebase SDK 2018 (сервер)
- Я пробовал это в Google Chrome и IE Edge (клиент)