前端下载文件

  1. 通过post方法进行下载且通过创建a标签
this.$post(
            EXPORT_SQL_TABLE_NAME,// 接口
            JSON.stringify(exportParams),// 传参为JSON数据格式
            {responseType: 'blob'},//指定后端返回的数据格式为blob
            res => {
            //let blob = new Blob([res], {type: "application/vnd.ms-excel"}) 可以设定下载excel文件
              let blob = new Blob([res]) // Blob(File)对象
              let url = window.URL.createObjectURL(blob)// window.URL.createObjectURL,接收一个Blob(File)对象,将其转化为Blob URL
              var a = document.createElement('a')
              a.href=url //然后赋给 a.download属性
              a.download='导出.sql' // 前端写死文件名和格式
              a.click()
              window.URL.revokeObjectURL(url) //释放对象
            },
            error => {
              this.$message.error(error.msg)
            }
        )

参考链接:https://zhuanlan.zhihu.com/p/97768916
https://www.jianshu.com/p/54d878aa0237


版权声明:本文为qq_46495738原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。