Erste Schritte mit der NodeJs Fetch API

Feb 13 2023
Die Fetch API ist eine moderne Schnittstelle zum Abrufen von Ressourcen in einem Webbrowser. Es bietet eine Möglichkeit, HTTP-Anfragen aus JavaScript zu stellen und Antworten mithilfe von Promises zu verarbeiten.

Die Fetch API ist eine moderne Schnittstelle zum Abrufen von Ressourcen in einem Webbrowser. Es bietet eine Möglichkeit, HTTP-Anfragen aus JavaScript zu stellen und Antworten mithilfe von Promises zu verarbeiten. Die Fetch-API ist auch in Node.js über das Node-Fetch-Modul verfügbar. In diesem Artikel werfen wir einen Blick auf die Verwendung der Fetch-API in Node.js.

Node-Fetch installieren:

Bevor wir mit der Verwendung der Fetch-API in Node.js beginnen, müssen wir das Node-Fetch-Modul installieren. Dies kann mit npm erfolgen, indem Sie den folgenden Befehl ausführen:

npm install node-fetch

const fetch = require('node-fetch');

Nachdem wir nun das Node-Fetch-Modul installiert und benötigt haben, können wir die Fetch-API verwenden, um HTTP-Anfragen zu stellen. Das einfachste Beispiel für das Stellen einer Anfrage ist unten dargestellt:

fetch('https://jsonplaceholder.typicode.com/posts')
  .then(response => response.json())
  .then(data => console.log(data))
  .catch(error => console.error(error));

Übergeben von Optionen zum Abrufen:

Die Abruffunktion benötigt ein zweites optionales Argument, mit dem Optionen an die Anfrage übergeben werden können. Diese Optionen können zum Festlegen von Headern, zum Festlegen der Anforderungsmethode und mehr verwendet werden. Hier ist ein Beispiel, das die Anfragemethode auf POST setzt und eine JSON-Nutzlast in den Anfragetext einfügt:

const options = {
  method: 'POST',
  headers: {
    'Content-Type': 'application/json'
  },
  body: JSON.stringify({
    title: 'foo',
    body: 'bar',
    userId: 1
  })
};

fetch('https://jsonplaceholder.typicode.com/posts', options)
  .then(response => response.json())
  .then(data => console.log(data))
  .catch(error => console.error(error));

Umgang mit Fehlern:

Die Fetch-API gibt ein Promise zurück, das in das Response-Objekt aufgelöst wird, auch wenn die Antwort einen Fehler anzeigt. Das bedeutet, dass wir den Statuscode der Antwort überprüfen und Fehler manuell behandeln müssen. Hier ist ein Beispiel für den Umgang mit Fehlern:

fetch('https://jsonplaceholder.typicode.com/posts/invalid-url')
  .then(response => {
    if (!response.ok) {
      throw new Error(response.statusText);
    }
    return response.json();
  })
  .then(data => console.log(data))
  .catch(error => console.error(error));

Abschluss:

Die Fetch-API ist ein leistungsstarkes Tool zum Senden von HTTP-Anfragen in Node.js.
Zur weiteren Lektüre:https://www.npmjs.com/package/node-fetch