Le téléchargement d'un blob de données, tel que des données audio ou vidéo enregistrées à l'aide d'API HTML5, sur un serveur est une tâche courante dans les applications Web. Cet article montre comment utiliser JavaScript, en particulier jQuery, pour télécharger un blob sur un serveur.
La méthode jQuery post(), telle qu'utilisée dans l'extrait de code fourni, ne convient pas au téléchargement de données binaires telles que des blobs. Au lieu de cela, l'API FormData est recommandée à cet effet.
Pour utiliser FormData, créez un nouvel objet FormData et ajoutez-y les données nécessaires. Dans l'exemple fourni, ajoutez le nom du fichier et les données blob à l'objet FormData :
<code class="javascript">var fd = new FormData(); fd.append('fname', 'test.wav'); fd.append('data', soundBlob);</code>
Ensuite, utilisez la méthode $.ajax() de jQuery pour envoyer le Objet FormData en tant que requête multipart/form-data. Spécifiez le type de demande, l'URL et les données, et définissez processData et contentType sur false :
<code class="javascript">$.ajax({ type: 'POST', url: '/upload.php', data: fd, processData: false, contentType: false }).done(function(data) { console.log(data); });</code>
Ce code envoie les données blob ainsi que le nom du fichier au script PHP côté serveur à l'adresse /upload.php , et enregistre la réponse.
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!