Frage

Ich versuche, ein Versprechen innerhalb der app.get-Funktion zu verwenden, das eine Abfrage ausführt, die auf einem Versprechen ausgeführt wird.Das Problem besteht jedoch darin, dass die Antwort nicht auf das Versprechen wartet, sondern einfach zurückantwortet.

Irgendeine Idee, wie der Code aussehen sollte, damit ein Versprechen in app.get in der Express-App leben kann?

War es hilfreich?

Lösung

generasacodicetagpre.

Andere Tipps

Hier ist eine Antwort von der Express-Dokumentation:

app.get('/', function (req, res, next) {
  // do some sync stuff
  queryDb()
  .then(function (data) {
    // handle data
    return makeCsv(data)
  })
  .then(function (csv) {
    // handle csv
  })
  .catch(next)
})

app.use(function (err, req, res, next) {
  // handle error
})

Es zeichnet sich vor allem durch sein Passspiel aus next durch .catch() sodass eine gemeinsame Fehlerbehandlungsroute die nachgelagerte Fehlerbehandlungslogik kapseln kann.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top