zoukankan      html  css  js  c++  java
  • vue+axios下载pdf文件流

    项目中用到流文件下载的需求,之前使用的方法一直都没问题,但是这次就是下载不下来,查了多种方法终于解决了,方式如下:

    // 下载文件
    downLoadFile(e) {
        let id = e.target.dataset.id;
        let name = e.target.dataset.name;
    
        if(e.target.dataset.id) {
            this.$https({
                method: 'get',
                url: '/wyxt_ubqts_oncloud/common/download',
                params: {
                    'file_id': '526f260d-73c1-422e-b10e-c0a2fe91364d'
                },
                responseType: "blob"
            }).then(res => {
                // console.log(res)
                // const fileName = res.headers["content-disposition"].split("=")[1];
                const _res = res.data;
                let blob = new Blob([_res], {type: 'application/pdf'});
                let downloadElement = document.createElement("a");
                let href = window.URL.createObjectURL(blob); //创建下载的链接
                downloadElement.href = href;
                // downloadElement.download = fileName; //下载后文件名
                downloadElement.download = name; //下载后文件名
                document.body.appendChild(downloadElement);
                downloadElement.click(); //点击下载
                document.body.removeChild(downloadElement); //下载完成移除元素
                window.URL.revokeObjectURL(href); //释放掉blob对象
            });
        }
    },    
    

      

  • 相关阅读:
    Java怎样对一个属性设置set或get方法的快捷键
    小程序怎样控制rich-text中的<img>标签自适应
    Java中Arrys数组常用的方法
    Java 怎样实现调用其他方法
    Java保留两位小数
    解决ajax请求跨域
    rand(7) 到rand(10)
    c++生成随机数
    批量该文件名
    正则表达式(=)
  • 原文地址:https://www.cnblogs.com/carriezhao/p/12156697.html
Copyright © 2011-2022 走看看