Abrufen eines Blobs von einer Daten-URL
In bestimmten Szenarien besteht die Notwendigkeit, beliebige Daten mithilfe von readAsDataURL( von FileReader) in eine Daten-URL umzuwandeln. ) Methode. Kann diese Daten-URL jedoch mithilfe integrierter Browser-APIs wieder in eine Blob-Instanz umgewandelt werden?
Eine Lösung wurde von einem Benutzer namens Matt vorgeschlagen:
Code-Snippet:
<code class="js">function dataURItoBlob(dataURI) { // Convert base64 to raw binary data var byteString = atob(dataURI.split(',')[1]); // Extract the MIME component var mimeString = dataURI.split(',')[0].split(':')[1].split(';')[0] // Create an ArrayBuffer and Uint8Array var ab = new ArrayBuffer(byteString.length); var ia = new Uint8Array(ab); // Set the bytes of the buffer for (var i = 0; i < byteString.length; i++) { ia[i] = byteString.charCodeAt(i); } // Create a Blob instance var blob = new Blob([ab], { type: mimeString }); return blob; }</code>
Hinweis:
Wie in nachfolgenden Kommentaren erwähnt, ist BlobBuilder veraltet. Daher handelt es sich bei dem oben bereitgestellten Code um eine aktualisierte Version.
Das obige ist der detaillierte Inhalt vonKönnen Sie eine Daten-URL mithilfe integrierter APIs in JavaScript zurück in einen Blob konvertieren?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!