VUE 后端接口返回的是一张图片

Posted wyhlightstar

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了VUE 后端接口返回的是一张图片相关的知识,希望对你有一定的参考价值。

是一个图形验证码的接口,点击验证码可以刷新,问题是我用之前的请求方式只是在 created 里面生效,再次点击就不会请求接口了。不明觉厉.

 

之前的写法是这样的

    // 切换验证码
     changeCodeImg:function(){
    this.verifyImg = ‘/api/login/image?r=‘+Math.random();
   },

不管是初始调用,还是点击调用都是可以的,可以在 network 中看到。

但是不知道什么原因,这次不行,点击事件是生效的,但是在 network 看不到请求。

 

所以换了一种写法

    changeCodeImg(){
      axios.get(way.authverifyCode, {
        responseType: ‘blob‘
      }).then((res) => {
        this.identifyingImg = window.URL.createObjectURL(res.data);
      })
  },

 

注意

responseType: ‘blob‘  这个是必须要有的

 

拿到二进制数据之后使用

window.URL.createObjectURL 

 

以上是关于VUE 后端接口返回的是一张图片的主要内容,如果未能解决你的问题,请参考以下文章

将列表导出成excel表格图片下载(vue中使用)

vue接口请求很快完成,响应返回数据很慢

vue中,前端如何保存后端的接口返回值

vue为什么会访问两次后端接口呢

前端Vue和Element-UI配合后端接口进行数据交互

vue element admin 4 最新版本 打包 跨域 代理配置 连接后端接口