post方式下载文件
<el-button type="primary" size="mini" @click="batchDownload">下载</el-button>
batchDownload() { let params = { zipName: 'xx', numbers: this.numTextarea, } axios({ // 用axios发送post请求 method: 'post', url: api.urlPort04 + '/x/xxx', // 请求地址 data: params, // 参数 responseType: 'blob', // 表明返回服务器返回的数据类型 }).then((res) => { this.downloadFile(res.data, '下载文件名') //正常下载文件名师合同名称 }) },
downloadFile(data, fileName) { let blob = new Blob([data], { type: 'application/zip', }) let url = window.URL.createObjectURL(blob) const link = document.createElement('a') // 创建a标签 link.href = url link.download = fileName // 重命名文件 link.click() URL.revokeObjectURL(url) // 释放内存 },