Téléchargement de blobs avec JavaScript
Lorsque vous traitez des données audio ou autres données multimédias en JavaScript, il est courant de rencontrer des blobs, qui sont des collections immuables de données brutes. Pour stocker ou traiter efficacement ces données, vous devrez peut-être les télécharger sur un serveur. Voici un guide détaillé sur la façon de télécharger un blob à l'aide de JavaScript :
Utilisation de FormData
L'une des méthodes les plus simples pour télécharger un blob consiste à utiliser l'API FormData. Il s'agit d'une API standardisée qui permet de créer une requête HTTP avec une charge utile contenant à la fois des données de formulaire régulières et des données binaires, telles que des blobs.
Implémentation de jQuery.ajax
Pour télécharger un blob à l'aide de jQuery.ajax, suivez ces étapes :
var fd = new FormData();
fd.append('fname', 'test.wav'); fd.append('data', soundBlob);
$.ajax({ type: 'POST', url: '/upload.php', data: fd, processData: false, contentType: false }).done(function(data) { console.log(data); });
Par en définissant processData sur false, nous empêchons jQuery de convertir l'objet FormData en chaîne, ce qui est nécessaire pour les données binaires comme les blobs. De même, définir contentType sur false permet au navigateur de déterminer le type de contenu approprié pour le téléchargement.
Implémentation personnalisée
Si vous préférez créer un objet XHR (XMLHttpRequest) manuellement, vous pouvez suivre les étapes suivantes :
var xhr = new XMLHttpRequest();
xhr.open('POST', '/upload.php', true); xhr.setRequestHeader('Accept', 'application/json');
var fd = new FormData(); fd.append('fname', 'test.wav'); fd.append('data', soundBlob);
xhr.send(fd);
xhr.onload = function() { var data = JSON.parse(xhr.responseText); console.log(data); };
En suivant ces étapes, vous pouvez télécharger efficacement des blobs sur un serveur à l'aide de JavaScript, vous permettant ainsi pour traiter et stocker efficacement les données multimédias.
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!