的过程如下:
send_file
函数来发送文件给客户端。from flask import Flask, send_file
app = Flask(__name__)
@app.route('/download')
def download_file():
# 从服务器获取要下载的文件路径
file_path = '/path/to/file'
# 发送文件给客户端
return send_file(file_path, as_attachment=True)
XMLHttpRequest
对象或者fetch
函数来发送GET请求。function downloadFile() {
// 创建XMLHttpRequest对象
var xhr = new XMLHttpRequest();
// 设置请求方法和URL
xhr.open('GET', '/download', true);
// 设置响应类型为blob,以便处理二进制文件
xhr.responseType = 'blob';
// 注册请求完成时的回调函数
xhr.onload = function() {
if (xhr.status === 200) {
// 创建一个a标签
var link = document.createElement('a');
link.href = window.URL.createObjectURL(xhr.response);
link.download = 'filename.ext'; // 设置下载文件的名称
link.click();
}
};
// 发送请求
xhr.send();
}
downloadFile
函数来触发文件下载操作。<button onclick="downloadFile()">下载文件</button>
这样,当用户点击下载按钮时,客户端会发送HTTP请求到服务器,服务器会将文件发送给客户端进行下载。
Flask是一个轻量级的Python Web框架,适用于快速开发简单的Web应用。它具有简单易用、灵活可扩展的特点,适合用于构建小型的、不复杂的Web应用。
JS(JavaScript)是一种脚本语言,广泛用于前端开发。它可以在网页中实现动态交互效果,与服务器进行数据交互,实现丰富的用户体验。
这种方式适用于需要从服务器下载文件的场景,比如用户需要下载服务器上的文档、图片、视频等文件。
领取专属 10元无门槛券
手把手带您无忧上云