Maison >interface Web >js tutoriel >Pouvez-vous reconvertir une URL de données en blob en JavaScript à l'aide des API intégrées ?

Pouvez-vous reconvertir une URL de données en blob en JavaScript à l'aide des API intégrées ?

Linda Hamilton
Linda Hamiltonoriginal
2024-10-26 08:22:30607parcourir

 Can You Convert a Data URL Back to a Blob in JavaScript Using Built-in APIs?

Obtention d'un Blob à partir d'une DataURL

Dans certains scénarios, il est nécessaire de transformer des données arbitraires en une URL de données à l'aide de readAsDataURL( ) méthode. Cependant, cette URL de données peut-elle être reconvertie en une instance Blob à l'aide des API de navigateur intégrées ?

Une solution a été proposée par un utilisateur nommé Matt :

Extrait de code :

<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>

Remarque :

Comme mentionné dans les commentaires ultérieurs, BlobBuilder est devenu obsolète. Par conséquent, le code fourni ci-dessus est une version mise à jour.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn