Response: blob() Methode
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.
Hinweis: Diese Funktion ist in Web Workers verfügbar.
Die blob() Methode der Response Schnittstelle nimmt
einen Response Stream und liest ihn vollständig aus. Sie gibt ein Promise zurück, das
mit einem Blob aufgelöst wird.
Syntax
blob()
Parameter
Keine.
Hinweis:
Wenn Response einen
Response.type von "opaque" hat, wird das resultierende Blob
eine Blob.size von 0 haben und einen Blob.type von
einem leeren String "", was es für Methoden wie
URL.createObjectURL() nutzlos macht.
Rückgabewert
Ein Promise, das mit einem Blob aufgelöst wird.
Ausnahmen
AbortErrorDOMException-
Die Anfrage wurde abgebrochen.
TypeError-
Wirft eine der folgenden Gründe:
- Der Antwortkörper ist gestört oder gesperrt.
- Es gab einen Fehler beim Dekodieren des Körperinhalts (zum Beispiel, weil der
Content-EncodingHeader falsch ist).
Beispiele
In unserem fetch request Beispiel (führen Sie fetch request live aus), erstellen wir
eine neue Anfrage mit dem Request() Konstruktor,
und verwenden diese, um ein JPG abzurufen. Wenn der Abruf erfolgreich ist, lesen wir ein Blob
aus der Antwort mit blob(), setzen es in eine Objekt-URL mit
URL.createObjectURL(), und setzen diese URL als Quelle eines
<img> Elements, um das Bild anzuzeigen.
const myImage = document.querySelector("img");
const myRequest = new Request("flowers.jpg");
fetch(myRequest)
.then((response) => response.blob())
.then((myBlob) => {
const objectURL = URL.createObjectURL(myBlob);
myImage.src = objectURL;
});
Spezifikationen
| Specification |
|---|
| Fetch> # ref-for-dom-body-blob①> |
Browser-Kompatibilität
Loading…