axios怎么请求图片服务器上的图片并显示到img上?

发布于 2022-09-07 20:32:49 字数 1125 浏览 11 评论 0

1.前后端分离项目,前端vue+webpackage+axios,后端springboot
2.使用了zuul做网关并配置路由,身份认证通过在header中写入token,在网关入口进行认证
2.使用fastDFS做文件服务器并配置了nginx进行在线预览
3.fastDFS的在线预览地址不对外开放,通过zuul路由过去。这就要求得有token,因此直接将图片地址写到img的src属性上是行不通了,

相关代码

<img ref="img">

    getimg(){
      axios.get(process.env.BASE_API+"preview/group0/M00/00/00/rBQAHVtkLACAR2y9AAgEf2GW0sY139.png", {
        responseType: 'arraybuffer',
        headers:{"validtoken":this.$store.getters.token}
      }).then(response => {
        return 'data:image/png;base64,' +btoa(new Uint8Array(response.data).reduce((data, byte) => data + String.fromCharCode(byte), ''));
      }).then(data=>{
        that.$refs.img.src=data;
      });

可以看到图片是请求下来了,但是怎么显示到img上去呢?上面这个代码是参考https://segmentfault.com/q/10... 这个上面的回答写的,但是没显示出来,console.log输出最后的data只有前面那一小段"data:image/png;base64,"

clipboard.png

clipboard.png

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(6

贵在坚持 2022-09-14 20:32:49

https://www.opinionatedgeek.c...
在这里检验一下base64是否有效

神妖 2022-09-14 20:32:49

前后端分离了 然后呢

把回忆走一遍 2022-09-14 20:32:49
 getimg(){
      axios.get(process.env.BASE_API+"preview/group0/M00/00/00/rBQAHVtkLACAR2y9AAgEf2GW0sY139.png", {
        responseType: 'arraybuffer',
        headers:{"validtoken":this.$store.getters.token}
      }).then(response => {
        return  window.URL.createObjectURL(new Blob(response));
      }).then(data=>{
        that.$refs.img.src=data;
      });
中性美 2022-09-14 20:32:49
axios.get('图片 URL', { responseType: 'blob', })
console.log(URL.createObjectURL(res.data))
赠佳期 2022-09-14 20:32:49
this.$http.get('get_img_url',{ responseType: 'blob'}).then((res)=>{
    let reader = new FileReader()
    reader.onload = (e) => {
        this.imgSrc = e.target.result;
    }
    reader.readAsDataURL(res.data)
}).catch((err)=>{

});
一场春暖 2022-09-14 20:32:49

这个问题怎么解决的?

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文