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

标签 python python-2.7 file-io download flask

我正在使用 Flask 和运行工头。我在内存中构建的数据,我希望用户能够将这些数据下载到文本文件中。我不想将数据写入本地磁盘上的文件并使其可供下载。

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

最佳答案

Flask 文档的“模式”部分介绍了将文件流式传输到客户端而不将它们保存到磁盘 - 具体来说,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"})

关于python - 在使用 Flask 的 python 中,如何写出一个对象以供下载?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12166970/

相关文章:

python - 计算日期时间差python

python - rabbitmqadmin无法处理unicode?

python - 在 matplotlib 中绘制对应于类标签的不同颜色的坐标

java - 在 Java 中逐行读取文本文件的最快方法

java - 黑莓中的文件处理

python - 使用 numpy loadtxt 操作数据

python - 使用 django ORM 我需要最少的文件

python - Python Nltk 中的斯坦福实体识别器(无大小写)

python - 使用 Scikit-learn 谷歌应用引擎

postgresql - 如何使用 python 格式化 postgres 查询输出