js 上传 blob 上传
用三星s8和苹果6测试均成功,在h5页面可以实现,如果app嵌套h5则不行。听说可以调用app录音的原生方法实现。这需要向app开发人员提供
下载地址:voice
测试地址(SSL过期就用不了):https://www.easynode.cn/voice/technical-describe.html
注意测试录音功能,必须是在本地起服务器localhost或者是在SSL有证书协议下进行。
————-上传—————
录音成功后获取到的是blob二进制数据。
var formData = new FormData();
formData.append("type","2");
formData.append("file",blob,"recorder.mp3"); //blob就是录音的文件,模拟表单上传
// console.log(formData.values());
for (var value of formData.values()) {
console.log(value);
}
$.ajax({
headers: {
"userToken": "11211556173647768number2"//此处放置请求到的用户token
},
url:"https://test.bugegaming.com/cos/file/upload" //上传接口地址
,type:"POST"
,contentType:false //让xhr自动处理Content-Type header,multipart/form-data需要生成随机的boundary
,processData:false //不要处理data,让xhr自动处理
,data:formData
,success:function(v){
console.log("上传成功",v);
alert(v.data)
}
,error:function(s){
console.error("上传失败",s);
}
});
测试地址:https://jiebian.life/web/h5/github/recordapp.aspx
兼容安卓和iOS:https://github.com/xiangyuecn/Recorder
下载(其中app-support-sample目录兼容安卓和ios):Recorder-master
链接: https://pan.baidu.com/s/1yocf8snwmmXN6HLpomnQ9w 提取码: dgua 复制这段内容后打开百度网盘手机App,操作更方便哦