JavaScript 使用 fetch 异步下载文件的实现方法

作者:拾光时间:2026-10-22 06:12:40浏览:549

本文介绍如何利用 JavaScript 的 fetch API 实现异步文件下载功能。通过获取响应并转换为 Blob 对象,创建临时链接触发浏览器下载,从而完成文件保存操作。

JavaScript 使用 fetch 异步下载文件的实现方法

下面直接展示实现代码,具体实现如下:


<!DOCTYPE html> 
<html> 
<head> 
  <meta charset="utf-8"> 
  <title>sample</title> 
</head> 
<body> 
  <button id='btn'>下载</button> 
  <span id='status'></span> 
</body> 
<script> 
  var url = "http://localhost/sample/upload.php"; 
  document.getElementById('btn').onclick = function() { 
    document.getElementById('status').innerHTML = '下载中'; 
    fetch(url).then(res => res.blob().then(blob => { 
      var a = document.createElement('a'); 
      var url = window.URL.createObjectURL(blob); 
      var filename = res.headers.get('Content-Disposition'); 
      a.href = url; 
      a.download = filename; 
      a.click(); 
      window.URL.revokeObjectURL(url); 
      document.getElementById('status').innerHTML = '下载完成'; 
    })); 
  }; 
</script> 
</html> 

总结

以上就是利用 JavaScript 通过 fetch 实现异步下载文件的完整介绍,希望能对大家有所帮助。如有疑问欢迎留言,小编会及时回复。感谢大家对本站的支持!

作者最新文章