前端实现文件流下载

1. 与后端约定,接口是get还是post,参数是json格式,还是query string格式,请求头是否要添加什么数据,等等。

复制代码
/**
 * @description 下载模板
 * @param {Object} params
 */
export const export = params => request({ url: 'exportTemplate.do', method: 'get', params }, {
  responseType: 'blob',
  headers: {
    type: 'K'
  }
})
复制代码
复制代码
export({ })
        .then((res) => {
          console.log('res', res)
          const blob = res
          const reader = new FileReader()
          reader.readAsDataURL(blob)
          reader.onload = (e) => {
            const a = document.createElement('a')
            a.download = '信息模板.xlsx'
            // 后端设置的文件名称在res.headers的 "content-disposition": "form-data; name=\"attachment\"; filename=\"20181211191944.zip\"",
            a.href = e.target.result
            document.body.appendChild(a)
            a.click()
            document.body.removeChild(a)
          }
        }).catch((err) => {
          console.log(err.message)
        })
复制代码

 

posted @   shine_lovely  阅读(461)  评论(0编辑  收藏  举报
编辑推荐:
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· 没有源码,如何修改代码逻辑?
阅读排行:
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 记一次.NET内存居高不下排查解决与启示
· DeepSeek 开源周回顾「GitHub 热点速览」
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
点击右上角即可分享
微信分享提示