vue下载二进制流图片操作

 更新时间:2020年10月26日 08:35:28   作者:lilongwei4321  
这篇文章主要介绍了vue下载二进制流图片操作,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧

1、应项目要求,后台返回二进制流,而且乱码

2、红色为必须

this.$axios.post('/fishweb/agent/downLoad',this.stringify({filename:'qrCode.jpg'}), {
 responseType: 'arraybuffer' //指定返回数据的格式为blob
 }).then((res) => {
 var src='data:image/jpg;base64,'+ btoa(new Uint8Array(res).reduce((data, byte) => data + String.fromCharCode(byte), ''));
 this.srcImg = src; //图片回显
 var link = document.createElement('a');
 link.href = src;
 link.download = "qrCode.jpg";
 link.click();
 })

补充知识:vue img src加载图片二进制问题记录

此 地址请求 http://xx.xx.xx.xx:xxxx/xx/.../xx/downLoadDoc?docId=xxxxx&access_token=xxxxx 返回的png二进制流。如下:

在项目中我使用img src直接对图片的二进制流加载,遇到频率很高的问题是前端发起的请求被服务器多次302重定向了,然后我访问的资源存在问题。

然后果断改为通过http get请求下来png 二进制流来处理。思路是通过responseType 制定返回数据格式为blob

请求的图片地址 url = http://xxxxxx:xxxx/xxx/xxx/merchDoc/downLoadDoc

axios({
  method: "get",
  url,
  params: xxx,
  responseType:"blob"
 }).then(response => {
  this.picUrl = window.URL.createObjectURL(response);
});

解析blob 并展示在img src 中如下:

this.picUrl = window.URL.createObjectURL(response);

以上这篇vue下载二进制流图片操作就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • Vue3+ElementPlus在el-table表格中显示时间的示例代码

    Vue3+ElementPlus在el-table表格中显示时间的示例代码

    文章介绍了如何在Vue3+ElementPlus的el-table表格中显示时间,并提供了相关的代码示例,感兴趣的朋友一起看看吧
    2025-02-02
  • 详解Vue中如何实现图片处理与滤镜效果

    详解Vue中如何实现图片处理与滤镜效果

    Vue.js作为一个灵活的JavaScript框架,可以很容易地与图像处理库和滤镜效果库集成,以实现各种图像处理需求,下面我们就来学习一下vue是如何实现图片处理与滤镜效果的吧
    2023-10-10
  • vue 图片转base64本地路径跨域方式

    vue 图片转base64本地路径跨域方式

    这篇文章主要介绍了vue 图片转base64本地路径跨域方式,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-02-02
  • 图文讲解vue的v-if使用方法

    图文讲解vue的v-if使用方法

    在本篇文章里我们给大家分享了关于vue的v-if使用方法的相关知识点,有兴趣的朋友们跟着学习下。
    2019-02-02
  • Vant如何自定义组件适配iphone底部安全区

    Vant如何自定义组件适配iphone底部安全区

    这篇文章主要介绍了Vant如何自定义组件适配iphone底部安全区问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2024-03-03
  • 一次VUE项目中遇到XSS攻击的实战记录

    一次VUE项目中遇到XSS攻击的实战记录

    XSS 攻击是页面被注入了恶意的代码,下面这篇文章主要给大家介绍了一次VUE项目中遇到XSS攻击的相关资料,文中通过实例代码介绍的非常详细,需要的朋友可以参考下
    2021-12-12
  • 基于vue如何发布一个npm包的方法步骤

    基于vue如何发布一个npm包的方法步骤

    这篇文章主要介绍了基于vue如何发布一个npm包的方法步骤,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-05-05
  • vue登录页实现使用cookie记住7天密码功能的方法

    vue登录页实现使用cookie记住7天密码功能的方法

    这篇文章主要介绍了vue登录页实现使用cookie记住7天密码功能的方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2021-02-02
  • vue.js 左侧二级菜单显示与隐藏切换的实例代码

    vue.js 左侧二级菜单显示与隐藏切换的实例代码

    这篇文章主要介绍了vue.js 左侧二级菜单显示与隐藏切换的实例代码,需要的朋友可以参考下
    2017-05-05
  • Vue学习之组件用法实例详解

    Vue学习之组件用法实例详解

    这篇文章主要介绍了Vue学习之组件用法,结合实例形式分析了vue.js组件的使用流程、模板、父子组件、插槽slot等相关原理与操作技巧,需要的朋友可以参考下
    2020-01-01

最新评论