可以通过以下步骤实现:
以下是一个完整的示例:
前端Vue.js代码:
<template>
<div>
<button @click="downloadFile">下载文件</button>
</div>
</template>
<script>
export default {
methods: {
downloadFile() {
// 发送下载文件的请求
window.open('/download', '_blank');
}
}
}
</script>
在上面的代码中,当用户点击“下载文件”按钮时,会发送一个请求到后端的/download
路径。
后端Python Flask代码:
from flask import Flask, send_file
app = Flask(__name__)
@app.route('/download')
def download_file():
# 获取要下载的文件路径
file_path = '/path/to/your/file.pdf'
# 使用send_file函数发送文件
return send_file(file_path, as_attachment=True)
if __name__ == '__main__':
app.run()
在上面的代码中,/download
路径的处理函数download_file
会返回要下载的文件。send_file
函数用于将文件发送回前端,并使用as_attachment=True
参数指定文件以附件形式下载。
这样,当用户点击前端的“下载文件”按钮时,会触发前端的downloadFile
方法发送请求到后端的/download
路径,后端将文件发送回前端,浏览器会弹出文件下载对话框。
这是一个简单的文件下载功能示例,您可以根据实际需求进行进一步的优化和拓展。
推荐的腾讯云相关产品和产品介绍链接地址:
请注意,以上仅为示例推荐的腾讯云产品,并非广告宣传。实际选择产品时应根据实际需求和情况进行评估和决策。
领取专属 10元无门槛券
手把手带您无忧上云