Flask 实现文件下载

在 Flask 中,要实现根据指定文件名下载文件的功能,你可以使用 Flask 的 send_from_directory 函数。这个函数可以用来从指定的目录发送文件。在这种情况下,你可以将应用的静态文件夹(默认是 'static')作为文件存储的位置。

首先,确保你的文件存放在 'static' 文件夹中,或者你指定的其他文件夹中。然后,你可以通过以下代码实现下载功能:

from flask import Flask, send_from_directory  
  
app = Flask(__name__)  
  
@app.route('/download/<filename>')  
def download_file(filename):  
    return send_from_directory('static', filename, as_attachment=True)  
  
if __name__ == '__main__':  
    app.run(debug=True)

这段代码中,<filename> 是你想要下载的文件的名称。例如,如果你有一个名为 'my_file.txt' 的文件存放在 'static' 文件夹中,你可以通过访问 '/download/my_file.txt' 来下载这个文件。

注意 as_attachment=True 这个参数。这个参数告诉浏览器这是一个需要下载的文件,而不是在浏览器中打开的文件。如果你不设置这个参数,浏览器可能会尝试打开文件而不是下载它。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值