使用ajax进行文件下载

06-17 1250阅读

使用ajax下载文件

使用ajax进行文件下载
(图片来源网络,侵删)
  • 定义响应类型为 blob
  • 拿到响应体后,将其转换为blob对象,通过URL.createObjectURL来创建一个url
  • 通过a标签的download属性来实现文件下载
    downloadFile(row) {
        var uploadPostData = {
            id:  row.id
        }
        $.ajax({
            type: "POST",
            //定义响应类型为 blob
            xhrFields: {
                responseType: 'blob'
            },
            async: true,
            contentType: "application/json",
            data: JSON.stringify(uploadPostData),
            url: "http://www.aaa.com/posts/",
            success: function(result) {
            	//转换为blob对象,通过a标签来实现文件下载
                const blob = new Blob([result], { type: 'application/octet-stream' })
                const a = document.createElement('a')
                a.href = URL.createObjectURL(blob)
                a.download = '文件名字.pdf'
                a.click()
            },
            error: function(xhr,status,error) {
                console.log('请求失败',error);
            }
        });
    },
    
VPS购买请点击我

文章版权声明:除非注明,否则均为主机测评原创文章,转载或复制请以超链接形式并注明出处。

目录[+]