Ich habe ein Problem mit meinem NodeJs Server.Versprechen Sie dann und fangen Sie in NodeJS
Was ich will ist, wenn eine E-Mail in meiner Datenbank existiert, möchte ich eine E-Mail an diese Adresse senden, aber wenn nicht, möchte ich senden und Fehlermeldung an den Client.
Ich habe diesen Controller:
reset(req, res) {
return this.service.getByEmail(req.body.email)
.then(this.mapper.outputEmail.bind(this.mapper))
.then(res.json.bind(res)).catch(res.send.bind(res));
}
ich die E-Mail in einer post-Methode senden. Ich benutze einen Dienst, der meine db für die E-Mail-Suche ruft, und ich habe diesen Mapper:
outputEmail(outputEmail){
return {
email: outputEmail.email
};
}
Mein Service:
getByEmail(correo) {
return this.db.find({
where: { email: correo }
});
}
Mein Problem ist, dass ich weiß nicht, wie zu kontrollieren, wenn ich bekomme ein leeres JSON-Objekt .. Wenn ich einen Post mit einer E-Mail sende, die es nicht gibt, erhalte ich eine {}
Antwort, aber wenn ich eine existierende E-Mail sende, bekomme ich {email: [email protected]}.
Was ich will ist, wenn ich ein leeres json bekomme, möchte ich nur einen Fehler, der besagt, dass E-Mail existiert nicht, aber wenn die Abfrage in der db bekommt eine echte E-Mail möchte ich weiterhin eine andere Methode, um eine zu senden E-Mail an diese Adresse.
Sie können Ausnahmen innerhalb Ihrer Dienste auslösen, und diese Ausnahmen werden vom catch-Block aufgehoben. Dies bricht die Kette der Ausführung von angeketteten Thesen. – Herku