Можно ли поместить app.use внутри app.get? - PullRequest
0 голосов
/ 23 октября 2018
app.get('/game/', function(req, res) {
if (req.session.user) {
    app.use(express.static(__dirname + '/game'));
    res.sendFile(__dirname + '/game/index.html');        
}
else {
    res.send('not logged in ');
}  

})

Разрешено ли размещать app.use внутри app.get, как в этом коде?он работает как задумано, но я хочу знать, законно это или нет.

1 Ответ

0 голосов
/ 24 октября 2018

Я бы предложил использовать две разные функции промежуточного программного обеспечения для разделения двух разных задач - аутентификации и обслуживания статических ресурсов:

app.get('/game/', ensureAuthenticated, express.static(__dirname + '/game'), sendGameIndex);

function ensureAuthenticated(req, res, next) {
  if (req.session.user) {
    next();        
  } else {
    res.send('not logged in ');
  }
}

function sendGameIndex(req, res) {
  res.sendFile(__dirname + '/game/index.html');
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...