原生Ajax处理文件流
2023-06-13 09:15:30 时间
本文最后更新于 128 天前,其中的信息可能已经有所发展或是发生改变。
在通过Ajax处理请求时,可能会遇到需要下载文件的情况,这里简要的说明下处理方法。
let downloadFile = document.getElementById("downloadImportInfo");
let fileUrl = "D:/test.xlsx"; // ajax获取到的文件地址
downloadFile.onclick = function () {
const xhr = new XMLHttpRequest();
let url = "localhost:8000/api/downloadUrl/" + fileUrl; //通过接口处理文件
xhr.responseType = 'blob';
xhr.onload = function () {
if (this.status == "200") {
//获取响应文件流
let blob = this.response;
let a = document.createElement('a');
a.style = 'display:none';
const reader = new FileReader();
reader.readAsDataURL(blob);
reader.onload = function (e) {
a.download = "试验计划信息.xlsx";
a.href = e.target.result;
document.body.append(a);
a.click();
a.remove();
}
}
}
xhr.open("get", url, true);
xhr.send();
}
相关文章
- 一个java文件如何放两个public class 类「建议收藏」
- h5py读取h5文件报错:Unable to open object (bad heap free list)
- spring ajax 长轮询,Ajax轮询和长轮询
- 在Ubuntu中安装Samba文件服务
- 文件同步工具rsyncd介绍及安装配置
- Ajax文件上传时:Formdata、File、Blob的关系
- windows上传ipa文件到app store的方法
- SQLServer 错误 2538 文件 FILE。 区数 = EXTENTS,已用页数 = USED_PAGES,保留页数 = RESERVED_PAGES。 故障 处理 修复 支持远程
- python 文件操作详解程序员
- Linux系统下大文件读写优化(linux大文件读写)
- 软连接:Linux下的文件利器(软连接linux)
- ajax下载文件的方法 php下载图片的方法详解编程语言
- AJAX文件上传并显示进度条(案例实战)
- MySQL 文件存储:让每一项数据都安全保存(mysql存入文件)
- 文件Linux 上使用Vim保存文件的技巧(linuxvim保存)
- Redis实现文件缓存的高效方案(redis文件缓存)
- 文件利用MSSQL语句快速导入TXT文件(mssql语句导入txt)
- Ajax调用MySQL给网站带来快捷体验(ajax调用mysql)
- 数据通过Ajax加载MySQL数据(ajax获取mysql)
- Ajax快速查询MySQL数据库(ajax查询mysql)
- AJAX技术简化Oracle数据库的访问处理(ajax连接oracle)
- 点击图片,AJAX删除后台图片文件的实现代码(asp.net)
- php中通过Ajax如何实现异步文件上传的代码实例
- H2数据库导入CSV文件实现原理简析
- ajax页面无刷新IE下遭遇Ajax缓存导致数据不更新的问题
- Ajax方式提交带文件上传的表单及隐藏iframe应用
- jQuery+php实现ajax文件即时上传的详解