如何通过 JavaScript 下载文件195
在 JavaScript 中,可以通过以下步骤下载文件:
创建 XMLHttpRequest 对象:
const xhr = new XMLHttpRequest();
配置请求:
('GET', url, true);
= 'blob';
发送请求:
();
处理响应:
= function() {
if ( === 200) {
// 下载文件
const blob = ;
const filename = getFilenameFromHeader(('Content-Disposition'));
saveBlob(blob, filename);
} else {
// 处理错误
}
};
以下是 JavaScript 下载文件的一些附加说明:
响应类型
在配置请求时,我们将 responseType 设置为 'blob'。这指示浏览器将响应作为 Blob 对象返回,Blob 对象表示原始文件数据。
文件名
为了获取要下载文件的名称,我们可以从 Content-Disposition 头中解析它。此标头通常包含文件名。
保存 Blob
要保存 Blob,我们可以使用以下函数: 示例 以下是一个下载文件的 JavaScript 示例: 其他方法 除了 XMLHttpRequest,还有一些其他 JavaScript 库可以用于文件下载,例如 jQuery 和 Axios。 2025-01-09 上一篇:JavaScript 提示框
function saveBlob(blob, filename) {
// 创建一个指向 blob URL 的链接
const blobUrl = (blob);
// 创建一个用于下载文件的 元素
const link = ('a');
= blobUrl;
= filename;
// 单击链接
();
// 撤销 blob URL
(blobUrl);
}
const xhr = new XMLHttpRequest();
('GET', '/', true);
= 'blob';
= function() {
if ( === 200) {
const blob = ;
const filename = getFilenameFromHeader(('Content-Disposition'));
saveBlob(blob, filename);
} else {
alert('下载文件失败!');
}
};
();
从脚本到全栈:JavaScript的十年蜕变与未来展望
https://jb123.cn/javascript/73563.html
Perl编程语言:揭开文本处理的神秘面纱,快速入门与核心应用速览!
https://jb123.cn/perl/73562.html
揭秘Perl中的‘中间值’:掌握数据流与效率优化的核心秘诀
https://jb123.cn/perl/73561.html
JavaScript驱动外汇市场:实时数据、交易与API开发全攻略
https://jb123.cn/javascript/73560.html
JavaScript 权限的奥秘:从浏览器沙箱到API安全实践
https://jb123.cn/javascript/73559.html
热门文章
JavaScript (JS) 中的 JSF (JavaServer Faces)
https://jb123.cn/javascript/25790.html
JavaScript 枚举:全面指南
https://jb123.cn/javascript/24141.html
JavaScript 逻辑与:学习布尔表达式的基础
https://jb123.cn/javascript/20993.html
JavaScript 中保留小数的技巧
https://jb123.cn/javascript/18603.html
JavaScript 调试神器:步步掌握开发调试技巧
https://jb123.cn/javascript/4718.html