Итак, я создаю веб-приложение с узлом, express и mon go (пока нет внешнего интерфейса) и пытаюсь проверить, что регистрирующийся пользователь не использует электронную почту, которая уже использовалась следующим образом:
const existsTatuador = (db, tatuador) =>{
return new Promise((resolve, reject)=>{
tatuadorDB.findTatuador(db, docs => {
docs.forEach(element => {
if(element.correo == tatuador.correo){
reject(Error("lo logro, el hijo de puta lo logro"));
}
});
});
});
}
router.post('/', function(req, res, next){
mongo.getDatabase(db =>{
tatuadorLogic.existsTatuador(db, req.body).then(
tatuadorDB.insertTatuador(db, data =>{
console.log("Inicia el proceso para crear el tatuador :" );
console.log(req.body);
res.send(req.body);
}, req.body)
).catch((err)=>{
console.log(err);
res.send(err);
})});
});
Но по какой-то причине, когда вызывается отклонение обещания, оно отправляется в блок catch после выполнения .then () и я получаю сообщение об ошибке [ERR_HTTP_HEADERS_SENT]: невозможно установить заголовки после их отправки клиенту