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,操作更方便哦