Ich bin neu zu beiden Knoten und Express, so dass ich denke, ich mache etwas Dummes. obwohlnode express.js Header können nach dem Senden nicht gesetzt werden. '
https://github.com/wa1gon/aclogGate/tree/master/server
logRouter.get("/loggate/v1/listall", function(req, res) {
let countStr = req.param('count');
let count: number;
if (!countStr) {
count = null;
} else {
count = Number.parseInt(countStr);
if (count == NaN) count = null;
}
acConn.listAllDatabase(count, (err: string, result: Array<LogGateResp>) => {
console.log("got list all data resp")
return res.json(result).end();
});
}
);
app.use('/', logRouter);
Es funktioniert das erste Mal, aber die zweite sprengt:
Der komplette Quellcode finden Sie unter.
listallDatabase verbindet sich mit einem Netzwerk-Socket, der die XML-Datenbank zurückerhält, analysiert und mit einem JS-Objekt aufruft. Das wiederum ruft res.json auf.
Vorschläge?
Entfernen Sie '.end()' nach Ihrem Aufruf der 'json'-Funktion. – noahnu