RecorderJS通过AJAX上传记录的blob

Tod*_*odd 4 audio ajax upload html5 recorder

我正在使用Matt Diamond的recorder.js来浏览HTML5音频API,感觉这个问题可能有一个明显的答案,但我找不到任何具体的文档.

问题:录制wav文件后,如何通过ajax将该wav发送到服务器?有什么建议???

cam*_*roe 5

如果你有blob,你需要把它变成一个url并通过ajax调用运行url.

// might be nice to set up a boolean somewhere if you have a handler object
object = new Object();
object.sendToServer = true;

// You can create a callback and set it in the config object.
var config = {
   callback : myCallback
}

// in the callback, send the blob to the server if you set the property to true
function myCallback(blob){
   if( object.sendToServer ){

     // create an object url
     // Matt actually uses this line when he creates Recorder.forceDownload()
     var url = (window.URL || window.webkitURL).createObjectURL(blob);

     // create a new request and send it via the objectUrl
     var request = new XMLHttpRequest();
     request.open("GET", url, true);
     request.responseType = "blob";
     request.onload = function(){
       // send the blob somewhere else or handle it here
       // use request.response
     }
     request.send();
   }
}

// very important! run the following exportWAV method to trigger the callback
rec.exportWAV();
Run Code Online (Sandbox Code Playgroud)

让我知道这是否有效..没有测试它但它应该工作.干杯!