В чем преимущество использования экспресс-обработчика ошибок вместо обработки ошибок на маршрутах, как показано ниже.Я начинаю проект с открытым исходным кодом , и я хотел бы использовать лучшие практики.
register: async function(req, res, next, error ){
User.findOne({username: req.body.username}, async function(err, __user){
try {
if(__user)
throw (
{
"type":"Registration Error",
"details" : `The username "${__user.username}" is already taken. Try another one.`
}
)
} catch(err) {
return res.status(500).json( {"error":{"type":err.type, "details":err.details}} )
}
Существуют ли сценарии, в которых лучше использовать один путь, а другой?
Чтобы увидеть код выше в полном контексте нажмите здесь