• formData文件下载


    //创建内存中的表单对象

    var form = new FormData();
    //向其中添加要传输的数据
    form.append("参数名", 参数值);
     
    axios.post(downloadUrl, form
    , { responseType: 'blob'
    }).then(res => {
       let blob = res.data 
       let reader = new FileReader()
       reader.readAsDataURL(blob)
       reader.onload = (e) => {
       let a = document.createElement('a')
       a.download = '文件名'
       a.href = e.target.result
       document.body.appendChild(a)
       a.click()
       document.body.removeChild(a) }
    })
     
     
     
     
    //////////////////////////////////////////////////////////////////////////////////////////////////第二种写法
     this.httpclient.request('POST', url, {
                responseType: 'blob',
                params: new HttpParams({
                    fromObject: requestParam //传入的参数对象
                }),
                body: requestParam
            }).toPromise().then((val) => {
                //   从后台查询到数据后进行导出最后的操作
                const blob = new Blob([val], { type: 'application/vnd.ms-excel' });
                const fileName = curFileName + '.xls';
                if (window.navigator.msSaveOrOpenBlob) {// For IE浏览器
                    navigator.msSaveBlob(blob, fileName);
                } else { // For 其他浏览器
                    const objectUrl = URL.createObjectURL(blob);
                    const a = document.createElement('a');
                    document.body.appendChild(a);
                    a.setAttribute('style', 'display:none');
                    a.setAttribute('href', objectUrl);
                    a.setAttribute('download', fileName);
                    a.click();
                    URL.revokeObjectURL(objectUrl);
                }
            } 
  • 相关阅读:
    pymysql
    Mysql
    协程
    线程池
    线程 条件
    线程 事件
    线程
    requests
    Linux 时区不对的解决办法
    Linux 简单命令
  • 原文地址:https://www.cnblogs.com/cs122/p/9665043.html
Copyright © 2020-2023  润新知