2017-12-07 2 views
1

Ich versuche, alle Daten aus meiner Datenbank mit res.send zurückzusenden, aber es wirft einen Fehler auf. An meinem Frontend rufe ich den Endpunkt select auf und versuche, alle Zeilen und Daten innerhalb der Datenbank zurückzugeben.Ich konnte kein Objekt in der Express-Antwort senden.

app.get('/select', function (req, res) { 
    con.query('SELECT * FROM Contracts', function (err, rows, fields) { 

    if (err) { 
     console.log(`Error: ${err}`); 
    } 

    for (var i = 0; i < rows.length; i++) { 
     var row = rows[i]; 
     res.send(row); 
    } 
    }) 
}); 
+1

Versuchen Sie nicht, Ihre Antwort in eine for-Schleife zu wickeln. Akkumulieren Sie alle Zeilen in ein Objekt und senden Sie es einmal. –

+1

Warum senden Sie nicht einfach das ganze 'rows' Array? – Luca

Antwort

3

sollten Sie res.write anstelle von res.send als dieser die Funktion (nichts nach dem erste Einsatz von res.send ausgeführt)

app.get('/select', function (req, res) { 
    con.query('SELECT * FROM Contracts', function (err, rows, fields) { 

    if (err) { 
     console.log(`Error: ${err}`); 
    } 

    for (var i = 0; i < rows.length; i++) { 
     var row = rows[i]; 
     res.write(row); 
    } 
    res.end(); //this finally sends the response 
    }) 
}); 
endet

Oder wenn Sie res.send verwenden, um die ganzen rows Array senden :

app.get('/select', function (req, res) { 
    con.query('SELECT * FROM Contracts', function (err, rows, fields) { 

    if (err) { 
     console.log(`Error: ${err}`); 
    } 

    res.send(rows); 
    }) 
}); 
+0

Wo schreibt 'res.write' obwohl? Ich habe beide ausprobiert und bekomme diesen Fehler immer wieder. Fehler: Header können nach dem Senden nicht festgelegt werden. – JorahFriendzone

+0

Es schreibt in ein anonymes Objekt, das an den Benutzer mit res.end gesendet wird, in welcher Zeile tritt dieser Fehler auf? – Luca

+0

Es wirft den Fehler in einem nicht verwandten Modul. 'node_modules/mysql/lib/protocol/Parser.js: 80' der Fehler ist throw err; // Wiederhole Nicht-MySQL-Fehler – JorahFriendzone

Verwandte Themen