JavaScript で BLOB をアップロードするにはどうすればいいですか? 質問する

JavaScript で BLOB をアップロードするにはどうすればいいですか? 質問する

この構造の BLOB データがあります:

Blob {type: "audio/wav", size: 655404, slice: function}
size: 655404
type: "audio/wav"
__proto__: Blob

これは、最近のChromeで録音した音声データでありgetUerMedia()レコーダー

jQuery の post メソッドを使用してこの BLOB をサーバーにアップロードするにはどうすればよいでしょうか? 試してみましたが、うまくいきませんでした:

   $.post('http://localhost/upload.php', { fname: "test.wav", data: soundBlob }, 
    function(responseText) {
           console.log(responseText);
    });

ベストアンサー1

あなたはフォームデータAPI

を使用する場合はjquery.ajaxprocessData: falseと を設定する必要がありますcontentType: false

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);
});

おすすめ記事