最近在为公司产品新增一个音频播放及整体波形预览的功能,首先需要的就是请求音频地址,将请求到的二进制原始数据转换为arrayBuffer类型,之后在通过Web Audio Api解码以此来生成波形展示所需数据,于是问题来了。
     如果用原生xhr是可以直接设置responseType属性的,但是因为是公司产品,底层封装的是jquery的ajax方法,然而$.ajax没有responseType属性设置,所以我们需要使用xhrFields,以此来设置原始xhr的key、value。

     

我需要的是arrayBuffer类型,于是可以如此设置:
     

        $.ajax({
			url: 'url',
			xhrFields: { responseType: "arraybuffer" },
		}).done((result) => {
			//	result 为arrayBuffer类型
		})

 

Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐