http请求有个responseType, 用来设置返回值,默认是'',等同于text,数据格式的转换是浏览器处理的
我们还会用到json,buffer,blob
json:是我们经常遇到后端返回的数据格式,直接res.json就可以
blob,当后端返回一个文件流时候回用到,
let a = new FileReader(); a.readAsDataURL(this.response) a.onload = function (e){ setUrl(e.target.result) };
buffer:
读取buffer
let bytes = new Uint8Array(this.response);//这里打印返回的response,会显示[[Int8Array]],也就是当前buffer需要Int8Array来构建视图 let data = ""; let len = bytes.byteLength; for (let i = 0; i < len; i++) { data += String.fromCharCode(bytes[i]); } setUrl("data:image/png;base64," + window.btoa(data));