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));

  

  

关于responseType的值的更多相关文章

  1. 怎样理解xhr.overrideMimeType()和xhr.responseType

    一般情况下, 我们会通过 xhr.responseType 告诉服务器我们想要什么类型的返回数据. 然后xhr.response 会根据xhr.responseType属性值来自动解析返回值. 但有时 ...

  2. 基于Blod的ajax进度条下载实现

    普通的浏览器下载 在web开发中,如果要实现下载功能,往往都是使用新开web页面或者是使用iframe的形式.实现起来其实很简单: <a target="_blank" hr ...

  3. [JavaScript] XMLHttpRequest记录

    XMLHttpRequest 使用 XMLHttpRequest 对象可以和服务器进行交互,可以获取到数据,而无需让整个页面进行刷新.这样 web 页面可以做到只更新局部页面,降低了对用户操作的影响. ...

  4. AJAX的具体使用

    一.GET请求 ①GET请求传递参数通常使用的是问号传参,即在请求地址上加上?参数,从而传递数据到服务端 ②一般在GET请求数据时,无需设置响应体,可以传null或者干脆不传 ③一般情况下URL传递的 ...

  5. axios请求配置

    全局配置示例(在js文件配置): axios.defaults.baseURL = 'https://api.example.com'; axios.defaults.headers.common[' ...

  6. WebApiTestClient自定义返回值说明

    WebApiTestClient是基于微软HelpPage一个客户端调试扩展工具,用来做接口调试比较方便.但是对返回值的自定义说明还是有缺陷的.有园友写过一篇文章,说可以通过对类进行注释,然后通过在I ...

  7. 【SpringCloud】HystrixCommand的threadPoolKey默认值及线程池初始化

    关于threadPoolKey默认值的疑问 使用SpingCloud必然会用到Hystrix做熔断降级,也必然会用到@HystrixCommand注解,@HystrixCommand注解可以配置的除了 ...

  8. 异步渲染页面怎么点击checkbox获取value值

    前后端分离时 后端向前端传递json数据  前端根据需要进行页面渲染 因为是异步渲染 想要获取获取渲染数据里面的值时获取不到的 介绍两个方法: 1,设置全局变量 即渲染时在html页面设置全局变量 如 ...

  9. js 获取图片url的Blob值并预览

    1)使用 XMLHttpRequest 对象获取图片url的Blob值 //获取图片的Blob值 function getImageBlob(url, cb) { var xhr = new XMLH ...

随机推荐

  1. 数学基础系列(六)----特征值分解和奇异值分解(SVD)

    一.介绍 特征值和奇异值在大部分人的印象中,往往是停留在纯粹的数学计算中.而且线性代数或者矩阵论里面,也很少讲任何跟特征值与奇异值有关的应用背景. 奇异值分解是一个有着很明显的物理意义的一种方法,它可 ...

  2. @ControllerAdvice自定义异常统一处理

    正常来说一个系统肯定有很多业务异常.而这些业务异常的信息如何返回给前台呈现给用户.比如用户的某些操作不被允许,需要给用户提示. Spring 提供了@ControllerAdvice这个注解,这个注解 ...

  3. 网站 cache control 最佳实践

    推荐阅读: 2020年软件开发趋势 高并发案例 - 库存超发问题 负载均衡的分类及算法 异地多活架构 Postman 的替代品来了 有时,当第二次访问网站时,看起来比较怪,样式不正常. 通常,是因为 ...

  4. W3C 带来了一个新的语言

    2019年12月5日,W3C 宣布: WebAssembly 核心规范 正式成为 Web 官方标准. 继 HTML, CSS, JavaScript 之后,WebAssembly 成为了第4个 Web ...

  5. IntelliJ IDEA编辑文件的时候CPU飙高问题的解决

    原文地址:https://www.javatang.com/archives/2018/04/26/25582403.html 上篇文章中说明了解决IntelliJ IDEA中文输入法无提示的问题,最 ...

  6. 什么是“跑面”呢? - ERSS耳斯百科:您的随身移动百科

    跑面 [pǎo miàn] 跑面,是一个汉语词汇,拼音为pǎo miàn,英文名为Run-Noodles,最基本解释为人跑步去吃面,其意义还有多重深层解释. 中文名:跑面 英文名:Run-Noodle ...

  7. Ninja构建系统入门

    1. 介绍 开篇先介绍.先甩资料给大家看,之后再自己演示一下基本使用.Ninja 是Google的一名程序员推出的注重速度的构建工具,一般在Unix/Linux上的程序通过make/makefile来 ...

  8. [ Python入门教程 ] Python中日志记录模块logging使用实例

    python中的logging模块用于记录日志.用户可以根据程序实现需要自定义日志输出位置.日志级别以及日志格式. 将日志内容输出到屏幕 一个最简单的logging模块使用样例,直接打印显示日志内容到 ...

  9. CSS-11-外边距

    <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...

  10. web自动化环境配置

    1.下载chrome浏览器对应版本的驱动 下载地址:https://npm.taobao.org/mirrors/chromedriver 2.下载后将chromedriver放到python安装路径 ...