Als .query()
eine asynchrone Methode ist, können Sie nicht return
der Wert als Callback wird after genannt die return
wird ausgewertet.
Sie müssen den callback
fortsetzen Muster:
function query(sql, callback) {
client.connect();
client.query(sql, function (err, rows, fields) {
if (err) {
callback(err);
else
callback(null, rows, fields);
});
client.end();
}
Korrektur:Scheint client.end()
zu sein ermöglicht, dass aktuelle Abfragen beendet werden, bevor die Verbindung tatsächlich geschlossen wird.
Aufruf von .end()
innerhalb des Rückrufs ist für viele APIs üblich, da sie alle ausstehenden Aktionen abbrechen.