如何在Flask上更改.csv响应的名称

时间:2016-01-27 10:44:44

标签: python csv flask

我正在使用烧瓶进行网络服务,在某些时候我必须向用户发送报告。它必须是.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文档,我没有找到任何有用的东西。

2 个答案:

答案 0 :(得分:0)

您可以在代码中执行以下操作:

filename_ = 'myfilename.csv'   # or any format you would like.
return Response(generate(), mimetype="text/csv", headers={"Content 
                disposition":"attachment; filename=" + filename_})

答案 1 :(得分:-1)

您可以添加'content-disposition'标题。

    resp = flask.Response(...
    resp.headers["content-disposition"] = "attachment; filename=" + fileName

最便携的命名文件方式是使用请求网址的最后一部分,即http://example.com/files/database_dump.csv