Js下载返回是二进制保存到本地文件

复制代码
// 创建一个新的 XMLHttpRequest 对象
var xhr = new XMLHttpRequest();

// 监听 XMLHttpRequest 对象的加载完成事件
xhr.addEventListener('load', function() {
    // 如果请求成功完成
    if (xhr.status === 200) {
        // 获取到二进制文件内容
        var blob = new Blob([xhr.response], { type: 'application/octet-stream' });
        
        // 创建一个临时的 URL
        var url = URL.createObjectURL(blob);
        
        // 创建一个 <a> 标签用于下载
        var link = document.createElement('a');
        link.href = url;
        link.download = 'filename'; // 设置文件名
        link.click();
        
        // 释放临时的 URL 对象
        URL.revokeObjectURL(url);
    }
});

// 发送请求以下载文件
xhr.open('GET', 'Handler.ashx?method=DownloadZhuTu&ID=' + ID);
xhr.responseType = 'blob'; // 告诉服务器响应类型是二进制数据
xhr.send();
复制代码

 

posted @   极客船长  阅读(550)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 分享4款.NET开源、免费、实用的商城系统
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· 上周热点回顾(2.24-3.2)
历史上的今天:
2023-03-05 使用Python调用ChatGPT最新官方API,实现上下文的对话功能
点击右上角即可分享
微信分享提示