Abrufen von Dateien oder Blobs von Objekt-URLs
Wenn Benutzern das Hochladen von Bildern per Drag-and-Drop oder anderen Methoden ermöglicht wird, ist die Verwendung von URL.createObjectURL wird verwendet, um Objekt-URLs für die Bildanzeige zu generieren. Da diese URLs zur Wiederverwendung gedacht sind, müssen sie nicht widerrufen werden. Wenn jedoch die Notwendigkeit besteht, ein FormData-Objekt zu erstellen, das eines dieser Bilder als Teil eines Formular-Uploads akzeptieren kann, ergeben sich Herausforderungen bei der Rückkonvertierung der Objekt-URL in einen Blob oder eine Datei zur Aufnahme in die FormData.
Moderne Lösung:
Durch die Nutzung der Funktionen moderner Browser können wir die fetch()-API verwenden, um die Datei oder den Blob abzurufen, die einer Objekt-URL zugeordnet sind. Der folgende Codeblock demonstriert diese Technik:
<code class="javascript">let blob = await fetch(url).then(r => r.blob());</code>
Diese Lösung funktioniert nahtlos sowohl mit Objekt-URLs als auch mit regulären URLs. Sobald der Blob abgerufen wurde, kann er an das FormData-Objekt angehängt werden, wodurch das Bild in die Formularübermittlung einbezogen werden kann.
Das obige ist der detaillierte Inhalt vonWie konvertiere ich eine Objekt-URL in einen Blob oder eine Datei für FormData?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!