最近在为公司产品新增一个音频播放及整体波形预览的功能,首先需要的就是请求音频地址,将请求到的二进制原始数据转换为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类型
})
更多推荐
$.ajax中设置responseType
发布评论