Отправить файл - удалить параметры - PullRequest
0 голосов
/ 24 ноября 2018

Итак, я перехожу на сайт типа /subsite с определенным URL-адресом, который содержит ключевой параметр:

https://my.server.com/premiumSite?key=secretKey

или

https://my.server.com/premiumSite.html?key=secretKey


Я бы хотел определить, является ли параметр key "secretKey" .Если это так, я бы хотел отправить пользователю файл (не перенаправлять!) с именем premiumSite.html .Если ключ какой-то другой, я бы хотел перенаправить пользователя на сайт index.html , чтобы не дать пользователю доступ к моему сайту.

Вся процедура работает абсолютнохорошо - но (конечно) есть одна проблема:

Функция res.sendFile() (как я хочу) вообще не меняет URL -что также влияет на параметры.

Так как я могу вызвать sendFile(), но одновременно удалить параметр «ключ» из URL (не используя локальный js)?


let app = express();
app.use('/premiumSite(.html)?',function(req, res) {
  let isPremiumUser = req.query.key === "secretKey";  // check if URL parameters are matching
  if (isPremiumUser) res.sendFile("www/premiumSite.html", {root: __dirname});
  else res.redirect("www/index.html"); 
})
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...