首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >在使用Flask的python中,我如何写出一个供下载的对象?

在使用Flask的python中,我如何写出一个供下载的对象?
EN

Stack Overflow用户
提问于 2012-08-29 04:22:26
回答 1查看 21.7K关注 0票数 23

我在用弗斯克和福尔曼。我在内存中构建的数据,我希望用户能够下载文本文件中的数据。我不想将数据写出到本地磁盘上的文件中,然后将其提供给下载。

我是python的新手。我想我应该在内存中创建一些文件对象,然后设置响应头,也许吧?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-08-29 11:27:46

在Flask的文档中的"pattern“部分--具体地说,就是in the section on streaming --在没有保存到磁盘的情况下将文件流式传输到客户端。基本上,您要做的就是返回一个包装了迭代器的完整的Response对象:

from flask import Response

# construct your app

@app.route("/get-file")
def get_file():
    results = generate_file_data()
    generator = (cell for row in results
                    for cell in row)

    return Response(generator,
                       mimetype="text/plain",
                       headers={"Content-Disposition":
                                    "attachment;filename=test.txt"})
票数 39
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/12166970

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档