Мне жаль, что я впервые пишу вопрос о потоке стека, но до сих пор не нашел ответа, несмотря на мои поиски в Google. поэтому мне нужно получить пустой объект из запроса с помощью mon goose, чтобы я мог более точно обрабатывать ошибки. на данный момент есть только два возможных способа управления запросами.1: получить значение и отправить его обратно пользователю или 2: в случае сбоя запроса выдает ошибку в операторе .catch, и неважно, что я получить как неудавшийся запрос, он всегда проходит через .catch, но если пользователь отправляет ложный идентификатор, чтобы я мог отправить обратно статус 404 вместо того, чтобы позволить оператору catch позаботиться об этом. так как я должен справиться с этим правильно?
1. поэтому в операторе if я хочу, когда я запрашиваю ложный идентификатор, оператор if выполняется, но он никогда не выполняется и всегда сводится к уловке, которая не настолько точна для обработки его специфических c ошибок. ! мои коды следующие:
app.get('/users/:id', async (req, res) => {
const _id = req.params.id;
try {
const user = await User.findById(_id)
if(!user){
return res.status(400).send('not found');
}
res.send(user)
} catch (e) {
res.status(500).send(e)
}
})