Vue 下载 blob 流文件

Vue 下载 blob 流文件

下载 Excel

      // 下载文件
      showFile(item) {
        this.$http({
          method: 'post',
          url: '/fileApi/downLoadFile',
          responseType: 'blob',
          data: {
            'flieName': item.fileName
          },
        }).then(data => {
          if (!data) {
            return
          }
          let link = document.createElement('a')
          link.href = window.URL.createObjectURL(new Blob([data.data], {
            type: "application/x-xls"
          }))
          link.target = '_blank'
          link.download = decodeURI('123.xlsx')
          document.body.appendChild(link)
          link.click()
          document.body.removeChild(link)
        })
      },

下载 txt

  // 下载文件
  showFile(item) {
    this.$http({
      method: 'post',
      url: '/fileApi/downLoadFile',
      responseType: 'blob',
      data: {
        'flieName': item.fileName
      },
    }).then(data => {
      if (!data) {
        return
      }
      let link = document.createElement('a')
      link.href = window.URL.createObjectURL(new Blob([data.data],))
      link.target = '_blank'
      link.download = decodeURI('文件名.txt')
      document.body.appendChild(link)
      link.click()
      document.body.removeChild(link)
    })
  },

下载 zip

  // 下载文件
  showFile(item) {
    this.$http({
      method: 'post',
      url: '/fileApi/downLoadFile',
      responseType: 'blob',
      data: {
        'flieName': item.fileName
      },
    }).then(data => {
      if (!data) {
        return
      }
      let link = document.createElement('a')
      link.href = window.URL.createObjectURL(new Blob([data.data], {
        type: "application/zip"
      }))
      link.target = '_blank'
      link.download = decodeURI('123.zip')
      document.body.appendChild(link)
      link.click()
      document.body.removeChild(link)
    })
  },

下载图片

		this.$http({
          url: '请求的接口',
          method: 'get',   // get请求,post改为post
          responseType: 'blob',
          params: {   // 这是提交的参数,如果是post 的就是 data
            id: '123456',
            index: 'img'
          }
        }).then(({ data }) => {
          let blob = new Blob([data]);   // 返回的文件流数据
          let url = window.URL.createObjectURL(blob);  // 将他转化为路径
          this.mapSrc = url  // 将转换出来的路径赋值给变量,其实和上一步结合就可以
          }
        })
posted @   叫我+V  阅读(299)  评论(0编辑  收藏  举报
编辑推荐:
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
阅读排行:
· 25岁的心里话
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· 零经验选手,Compose 一天开发一款小游戏!
· 一起来玩mcp_server_sqlite,让AI帮你做增删改查!!
历史上的今天:
2020-03-02 HTML5实现div拖拽
2020-03-02 Vue 接收数据for循环渲染出的标签jQuery渲染的点击事件无效
点击右上角即可分享
微信分享提示