у меня есть маршрут, как этотэкспресс-маршрут 404 страница никогда не был вызвал
router.get('/:username', function(req, res, next) {
if(req.params.username){
Account.find({'username':req.params.username},function(err,user){
if(user.length > 0){
res.render('index',{
title:capitalizeFirstLetter(req.params.username)
});
}
})
}
});
и он работал, когда я помещал имя любых моих пользователей. Но если я поставлю что-то, что не в db, оно загружается навсегда. У меня много таких маршрутов, поэтому было бы утомительно, если бы я изменил каждый из них, чтобы перейти на страницу ошибок 404.
Интересно, почему по умолчанию 404 больше не работает, что
app.use(function(req, res, next) {
var err = new Error('Not Found');
err.status = 404;
next(err);
});
Что вы предоставляете, когда пользователь .length == 0? ... Это ответ, я думаю. –
@ EduardoYáñezParareda У меня есть другие маршруты, такие как: имя пользователя/профиль и т. Д., Я не хочу изменять каждый маршрут. –
вы не обрабатываете иначе case i.e., 'user.length> 0', а также используете' * 'в обработчике ошибок для любого другого неизвестного маршрута –