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…