为什么接口返回的是二进制流的文件时,前端请求时responseType要设置成‘blob‘

当接口返回的是二进制流的文件时,前端在发起axios请求时需要设置responseType为blob,原因有以下几点

1、数据类型匹配: blob类型能够正确处理二进制数据。如果前端请求不设置responseType,默认情况下,浏览器会尝试解析返回的数据,可能会将其错误地处理为字符串,导致数据损坏或不可用。
2、文件处理: 对于音频、视频、图片等文件,它们都是以二进制形式存在的。前在获取这些文件时,要能够正确地接收和处理这些二进制数据。设置responseType为blob可以确保数据的完整性,使得前端可以对这些二进制数据进行进一步的处理,如将其保存为文件或直接在浏览器中播放。
3、兼容性问题: 如果不设置responseType为blob,在某些浏览器中可能会遇到兼容性问题,因为不同浏览器对返回数据的处理方式可能不同。设置responseType为blob是一种标准化的处理方式,有助于确保代码在不同浏览器中的兼容性。
所以,在处理二进制流文件时,前端请求设置responseType为blob主要是为了确保能够正确地接收和处理后端返回的二进制数据。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值