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下载二进制流图片操作就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • 解决VUEX兼容IE上的报错问题

    解决VUEX兼容IE上的报错问题

    下面小编就为大家分享一篇解决VUEX兼容IE上的报错问题,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-03-03
  • vue中v-for和v-if一起使用之使用compute的示例代码

    vue中v-for和v-if一起使用之使用compute的示例代码

    这篇文章主要介绍了vue中v-for和v-if一起使用之使用compute的相关知识,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2022-05-05
  • VUE正则表达式用法全集整理(推荐!)

    VUE正则表达式用法全集整理(推荐!)

    正则表达式是由一些特定的字符组成,代表一个规则,可以用来检验数据格式是否合法,也可以在一段文本中查找满足要求的内容,这篇文章主要给大家介绍了关于VUE正则表达式用法的相关资料,需要的朋友可以参考下
    2024-02-02
  • vue发送ajax请求详解

    vue发送ajax请求详解

    如何利用vue进行AJAX,其它vue本身不支持发送AJAX请求,需要使用vue-resource(vue1.0版本)或axios(vue2.0版本)第三方插件的支持才行
    2018-10-10
  • 谈一谈vue请求数据放在created好还是mounted里好

    谈一谈vue请求数据放在created好还是mounted里好

    这篇文章主要介绍了谈一谈vue请求数据放在created好还是mounted里好的问题,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-07-07
  • vue打包并部署到nginx上的实现示例

    vue打包并部署到nginx上的实现示例

    本文主要介绍了vue打包并部署到nginx上的实现示例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2024-01-01
  • 使用use注册Vue全局组件和全局指令的方法

    使用use注册Vue全局组件和全局指令的方法

    下面小编就为大家分享一篇使用use注册Vue全局组件和全局指令的方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-03-03
  • Element Input组件分析小结

    Element Input组件分析小结

    这篇文章主要介绍了Element Input组件分析小结,详细的介绍了Input组件的使用,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-10-10
  • Vue中的侦听器及使用场景

    Vue中的侦听器及使用场景

    Vue中的侦听器是一种响应式机制,可以对指定的数据进行监听,并在数据变化时执行相应的回调函数。常用于监听复杂数据类型的变化,如对象和数组。通过侦听器,可以实现数据的自动更新和逻辑处理等功能,提高代码的可读性和可维护性
    2023-05-05
  • vue3实现H5表单验证组件的示例

    vue3实现H5表单验证组件的示例

    本文主要介绍了vue3实现H5表单验证组件的示例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2023-04-04

最新评论