我在此结构中有一个Blob数据:
Blob {type: "audio/wav", size: 655404, slice: function} size: 655404 type: "audio/wav" __proto__: Blob
实际上是使用最新的ChromegetUerMedia()和Recorder.js记录的声音数据
getUerMedia()
如何使用jquery的post方法将此blob上传到服务器?我试过这个没有运气:
$.post('http://localhost/upload.php', { fname: "test.wav", data: soundBlob }, function(responseText) { console.log(responseText); });
尝试这个
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); });
您需要使用FORMDATA API和设置jQuery.ajax的processData和contentType来false。
jQuery.ajax
processData
contentType
false