Ich versuche, Daten von einer SQL Server DB mit Knoten zu erhalten. Ich kann eine Verbindung herstellen und Daten abrufen, indem ich Funktionen ausführe, aber ich möchte die Funktionen in API-Endpunkte verwandeln.Express GET Request Ergebnisse in Fehler: "res.send ist keine Funktion"
Basierend auf dem Fehler scheint es mir, dass die res
Variable nicht in die letzte if-Anweisung übergeben wird, aber ich sehe das Problem nicht.
Ich bekomme einen res.send is not a function
Fehler bei der Verwendung einer GET
Methode auf diese Adresse von Postman.
let mssqlQuery = function(query, res) {
sql.connect(dbConfig, function(err) {
if (err) {
console.log("Error while connecting database :- " + err)
res.send(err)
} else {
let request = new sql.Request();
request.query(query, function(err, res) {
if (err) {
console.log("Error while querying database :- " + err)
res.send(err)
} else {
res.send(res) // res.send is not a function
}
})
}
})
}
// GET API
app.get("/api/address", function(req, res) {
var query = "select * from address"
mssqlQuery(query, res)
})
Ist die res
Variable scoped unsachgemäß oder könnte ich habe den falschen Ansatz völlig?
Die innere 'res' von' request.query() 'beschattet den äußeren der Funktion. ändere den Namen von einem und du solltest in Ordnung sein. – Sirko
Können Sie ein Code-Snippet senden? Ich denke, ich habe versucht, was Sie sagen, aber immer noch einen Fehler gemacht. Beziehen Sie sich auf die Zeilen 8 und 13? Ich habe die Frage bearbeitet, um mein Verständnis Ihres Kommentars widerzuspiegeln. – KVNA