Ich erhalte inkonsistente Ergebnisse von meinem Server. Manchmal ist die richtige Antwort wird gesendet, und manchmal bekomme ich die FehlerKann Header nicht entfernen, nachdem sie gesendet werden
kann nicht Header entfernen, nachdem sie
Mit Node.js, Koa.js und Mongoose
router
.get('/events/', function* getEvent() {
let eventList = [];
yield Event.find({}, (error, events) => {
if (error) {
this.response.body = 'Unable to get events.';
this.status = 404;
return;
}
eventList = events;
eventList.sort((first, second) => {
// sort implementation
});
this.response.body = eventList;
this.status = 200;
});
});
Dies wird normalerweise durch einen inkonsistenten res.end() - Aufruf verursacht. Wenn das nicht der Fall ist, könnten Sie etwas mehr Kontext oder Code bereitstellen? – Dreamlines
Editierter Codeblock, um die gesamte Methode anzuzeigen. Mir ist aufgefallen, dass der Endanruf manchmal nicht konsistent ist. Manchmal wird die Event.find() ausgeführt, manchmal nicht. – safaiyeh
Es besteht die Möglichkeit, dass dies daran liegt, wie Sie mit Fehlern umgehen (können Sie den Code auch hinzufügen?). Es scheint auch, dass Ihre 'Ausbeute' überflüssig ist, da Sie auch einen Callback an' Event.find() 'übergeben. – robertklep