Dieser Inhalt wurde automatisch aus dem Englischen übersetzt, und kann Fehler enthalten. Erfahre mehr über dieses Experiment.

View in English Always switch to English

Response

Baseline Widely available *

This feature is well established and works across many devices and browser versions. It’s been available across browsers since ⁨März 2017⁩.

* Some parts of this feature may have varying levels of support.

Hinweis: Diese Funktion ist in Web Workers verfügbar.

Das Response-Interface der Fetch API stellt die Antwort auf eine Anfrage dar.

Sie können ein neues Response-Objekt mit dem Response()-Konstruktor erstellen. Wahrscheinlicher ist jedoch, dass Sie ein Response-Objekt als Ergebnis einer anderen API-Operation erhalten – zum Beispiel in einem Serviceworker über FetchEvent.respondWith oder durch einen einfachen fetch()-Aufruf.

Konstruktor

Response()

Erstellt ein neues Response-Objekt.

Instanz-Eigenschaften

Response.body Schreibgeschützt

Ein ReadableStream der Inhaltsdaten.

Response.bodyUsed Schreibgeschützt

Speichert einen booleschen Wert, der angibt, ob der Inhalt in einer Antwort bereits verwendet wurde.

Response.headers Schreibgeschützt

Das mit der Antwort verbundene Headers-Objekt.

Response.ok Schreibgeschützt

Ein boolescher Wert, der angibt, ob die Antwort erfolgreich war (Status im Bereich von 200299).

Response.redirected Schreibgeschützt

Gibt an, ob die Antwort das Ergebnis einer Umleitung ist (d.h. ob die URL-Liste mehr als einen Eintrag hat).

Response.status Schreibgeschützt

Der Statuscode der Antwort. (Dieser ist 200 für einen Erfolg).

Response.statusText Schreibgeschützt

Die Statusmeldung, die dem Statuscode entspricht. (z.B. OK für 200).

Response.type Schreibgeschützt

Der Typ der Antwort (z.B. basic, cors).

Response.url Schreibgeschützt

Die URL der Antwort.

Statische Methoden

Response.error()

Gibt ein neues Response-Objekt zurück, das einem Netzwerkfehler zugeordnet ist.

Response.redirect()

Gibt eine neue Antwort mit einer anderen URL zurück.

Response.json()

Gibt ein neues Response-Objekt für die Rückgabe der bereitgestellten JSON-kodierten Daten zurück.

Instanz-Methoden

Response.arrayBuffer()

Gibt ein Promise zurück, das mit einer ArrayBuffer-Darstellung des Antwortinhalts aufgelöst wird.

Response.blob()

Gibt ein Promise zurück, das mit einer Blob-Darstellung des Antwortinhalts aufgelöst wird.

Response.bytes()

Gibt ein Promise zurück, das mit einer Uint8Array-Darstellung des Antwortinhalts aufgelöst wird.

Response.clone()

Erzeugt eine Kopie eines Response-Objekts.

Response.formData()

Gibt ein Promise zurück, das mit einer FormData-Darstellung des Antwortinhalts aufgelöst wird.

Response.json()

Gibt ein Promise zurück, das mit dem Ergebnis des Parsens des Antworttextes als JSON aufgelöst wird.

Response.text()

Gibt ein Promise zurück, das mit einer Textdarstellung des Antwortinhalts aufgelöst wird.

Beispiele

Abrufen eines Bildes

In unserem einfachen Fetch-Beispiel (Beispiel live ausführen) verwenden wir einen einfachen fetch()-Aufruf, um ein Bild abzurufen und es in einem <img>-Element anzuzeigen. Der fetch()-Aufruf gibt ein Promise zurück, das auf das mit der Ressourcenabfrage verbundene Response-Objekt aufgelöst wird.

Da wir ein Bild anfordern, müssen wir Response.blob ausführen, um dem Antwortobjekt seinen korrekten MIME-Typ zuzuweisen.

js
const image = document.querySelector(".my-image");
fetch("flowers.jpg")
  .then((response) => {
    if (!response.ok) {
      throw new Error(`HTTP error! status: ${response.status}`);
    }
    return response.blob();
  })
  .then((blob) => {
    const objectURL = URL.createObjectURL(blob);
    image.src = objectURL;
  })
  .catch((error) => {
    console.error("Error fetching the image:", error);
  });

Sie können auch den Response()-Konstruktor verwenden, um Ihr eigenes benutzerdefiniertes Response-Objekt zu erstellen:

js
const response = new Response();

Ein PHP-Aufruf

Hier rufen wir eine PHP-Programmdatei auf, die eine JSON-Zeichenfolge generiert und das Ergebnis als JSON-Wert anzeigt.

js
// Function to fetch JSON using PHP
const getJSON = async () => {
  // Generate the Response object
  const response = await fetch("getJSON.php");
  if (response.ok) {
    // Get JSON value from the response body
    return response.json();
  }
  throw new Error("*** PHP file not found");
};

// Call the function and output value or error message to console
getJSON()
  .then((result) => console.log(result))
  .catch((error) => console.error(error));

Spezifikationen

Specification
Fetch
# response-class

Browser-Kompatibilität

Siehe auch