Die Syntax, die Du da verwendest, ist mir nicht vertraut, aber auch ohne das kann ich deine Vermutung bestätigen:
Zitat
Kann es sein das ich hier ein Problem mit einer asynchronen Ausführung habe, da „undifend“ als erstes ausgegeben wird?
Die Sache ist die, dass dein return data; für die anonyme Funktion gilt, in der es steht, und nicht den Returnwert für getAll liefert.
Lösung, indem Du alle Aktionen, die data brauchen, in dieser anonymen Funktion erledigst. Wenn die Funktion getAll mehrfach verwendet werden soll, kannst Du eine Callback-Funktion übergeben:
module.exports.getAll = (callback) => {
http.get('http://127.0.0.1:3010/get', (response) => {
console.log("get all called");
var data = '';
response.on('data', (chunk) => {
data += chunk;
});
response.on('end', () => {
/*Die angeforderten Daten kommen bis hier an*/
console.log(data);
callback(data);
});
});
}
Alles anzeigen