Node.js http-data außerhalb der Request?

1 Antwort

Vom Fragesteller als hilfreich ausgezeichnet

Es handelt sich hierbei um einen asynchronen Vorgang. Das heißt, dein Skript müsste explizit darauf warten, bis der Response erhalten wurde.

Die einfachste Lösung wäre es, im Callback (für das end-Ereignis) weiterzuarbeiten.

Die Zuweisung an eine Variable http_get würde ich im Übrigen weglassen. Es sei denn, du möchtest den Block wiederverwendbar gestalten.

doGetRequest = (url, callback) => {
  http.get(url, response => {
    let data = "";
    response.on("data", d => data += d);
    response.on("end", () => callback(data));
  });
}

// usage:
doGetRequest("/some/api/method", data => {
  /* do something ... */
});

Alternativ gibt es noch den Weg über async/await.

GoodQNextQx 
Fragesteller
 12.09.2022, 00:02

Hmm verstehe. Ich würd die deshalb gern in ner Variable haben, um halbwegs unkompliziert mit der resultierenden JSON arbeiten zu können

0
regex9  12.09.2022, 03:10
@GoodQNextQx

Das Ergebnis (gelesene Daten aus dem Response) stehen in der Variable data.

0