我正在使用烧瓶作为Web服务,在某些时候我必须向用户发送报告。它必须是.csv格式,我正在使用以下代码:
# ...
def generate():
head 'some headers'
# some loops to get data from lists and dbs
yield 'the data'
# ...
return Response(generate(), mimetype = 'text/csv')
此报告的名称类似于"someletters.csv,用户想要另一个更具描述性的名称,如何更改报告的名称?我一直在 Flask 文档上寻找,但没有找到任何有用的东西。
您可以在代码中执行以下操作:
filename_ = 'myfilename.csv' # or any format you would like.
return Response(generate(), mimetype="text/csv", headers={"Content
disposition":"attachment; filename=" + filename_})
您可以添加"content-disposition"标头。
resp = flask.Response(...
resp.headers["content-disposition"] = "attachment; filename=" + fileName
最便携的文件命名方式是使用请求 url 的最后一部分,即 http://example.com/files/database_dump.csv