前言:amr格式是微信上的语音格式,比如企业微信会话存档语音文件保存时就会遇到,由于html标签都不支持amr格式的语音文件,因此采用如下开源项目:
https://github.com/BenzLeung/benz-amr-recorder
1、本地播放amr格式文件
var amr = new BenzAMRRecorder();
amr.initWithUrl('http://localhost:85/storage/2020/10/20/6656225916139175654_1604040463_external.amr').then(function() {
if(amr.isPlaying()){
amr.stop();
} else {
amr.play();
}
});
amr.onEnded(function() {
console.log("播放完毕");
})
2、播放腾讯云 对象存储(对象存储上的存储桶文件)
问题:存在跨域问题(2020年时候文件路径是http开头的,2021年过来就改成https开头的了)
报错:has been blocked by CORS policy: No 'Access-Control-Allow-Origin' header is present on the requested resource.
已经被CORS策略阻止:在被请求的资源上没有“Access-Control-Allow-Origin”报头。
因此客服让设置CORS,添加规则:
参考:https://cloud.tencent.com/document/product/436/11488
https://cloud.tencent.com/document/product/436/13318
如此就不会存在跨域问题了,大功告成!!
!!切记:来源Origin 配置到com即可,不要加/
!!切记:文件预签名URL默认http,如果是https的话,也需要在底层修改一下
在ClientConfig.java下修改配置 将http修改成https