python – 无法使用具有实际名称的flask下载文件
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了python – 无法使用具有实际名称的flask下载文件,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1045字,纯文字阅读大概需要2分钟。
内容图文
![python – 无法使用具有实际名称的flask下载文件](/upload/InfoBanner/zyjiaocheng/789/9d76de65427647ea8a88ddc59a475664.jpg)
我正在尝试使用flask下载文件.我的代码如下
@app.route('/Download')
def Down():
rpm = request.args.get('rpm')
root = '/home/rpmbuild/RPMS/'
return send_from_directory(root,rpm)
文件名在url中传递.当我点击网址时,我可以下载文件,但文件名一直在下载.我需要它作为文件的实际名称.我也试过send_file(),但它也下载名称为Download.
解决方法:
send_from_directory的“选项”与sendfile相同:
flask.send_file(filename_or_fp, mimetype=None, as_attachment=False,
attachment_filename=None, add_etags=True,
cache_timeout=None, conditional=False,
last_modified=None)
所以你应该用它来调用它:
@app.route('/Download')
def Down():
rpm = request.args.get('rpm')
root = '/home/rpmbuild/RPMS/'
return send_from_directory(root,rpm,attachment_filename='foo.ext')
你当然用你要给文件的名字替换’foo.ext’.您可能还想将as_attachment参数设置为True.
如果你想要相同的名字,你可以使用os.path.basename(..):
import os
@app.route('/Download')
def Down():
rpm = request.args.get('rpm')
root = '/home/rpmbuild/RPMS/'
return send_from_directory(root,rpm,as_attachment=True,
attachment_filename=os.path.basename(rpm))
内容总结
以上是互联网集市为您收集整理的python – 无法使用具有实际名称的flask下载文件全部内容,希望文章能够帮你解决python – 无法使用具有实际名称的flask下载文件所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。