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
AbortError
DOMException
-
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-Encoding
Header 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…