Добрый день. Смотрю
вот сюда и делаю, как сказано, но что-то не так
Идея в том, что есть два маршрута [get] /:id и [get] /new/*
Нужно написать промежуточный обработчик, чтобы для обоих маршрутов логировался запрос
Пока пришел в к такому коду:
app.use(function (req, res, next) {
console.log(new Date().toLocaleString('ru', options));
console.log(req.originalUrl);
console.log(req.params);
console.log(JSON.stringify(req.body) || '-nobody');
console.log('--------------------------------------');
next();
});
app.get('/new/*', function(req, res){
console.log('1');
})
app.get('/:id', function(req, res){
var id = req.params.id;
if(id in list){
console.log(list[id]);
if (list[id].match('http')) { res.redirect(301, list[id]) }
else { res.redirect(301, 'http://'+list[id]) }
}
else{
res.status(404).send('no such element');
}
})
Проблема:
Логируются запросы, для маршрута app.get('/new/*')
И логируются для app.get('/:id'), но только если логика в обработчике доходит до res.status(404).send('no such element');
А если условие выполняется и я шлю редирект, запрос не логируется
Что я делаю не так?