触发 JavaScript 请求从后台下载文件的方法有多种,以下是其中几种常见的方式:
<a>
标签的 download
属性:可以通过创建一个 <a>
标签,设置其 href
属性为文件的下载链接,然后设置 download
属性为文件名,这样点击该链接时,浏览器会自动下载文件。<a href="path/to/file.pdf" download="filename.pdf">点击下载文件</a>
<a>
标签来触发下载。var xhr = new XMLHttpRequest();
xhr.open('GET', 'path/to/file.pdf', true);
xhr.responseType = 'blob';
xhr.onload = function(e) {
if (this.status == 200) {
var blob = new Blob([this.response], {type: 'application/pdf'});
var downloadUrl = URL.createObjectURL(blob);
var a = document.createElement('a');
a.href = downloadUrl;
a.download = 'filename.pdf';
document.body.appendChild(a);
a.click();
document.body.removeChild(a);
}
};
xhr.send();
<a>
标签来触发下载。fetch('path/to/file.pdf')
.then(response => response.blob())
.then(blob => {
var downloadUrl = URL.createObjectURL(blob);
var a = document.createElement('a');
a.href = downloadUrl;
a.download = 'filename.pdf';
document.body.appendChild(a);
a.click();
document.body.removeChild(a);
});
以上方法可以适用于下载各种类型的文件,只需将文件的链接替换为实际的文件路径即可。对于更复杂的需求,可以结合后端接口来实现文件下载,例如使用 AJAX 请求后端接口,后端返回文件下载链接,然后在前端进行下载操作。
领取专属 10元无门槛券
手把手带您无忧上云