【发布时间】:2020-06-21 17:14:43
【问题描述】:
我正在通过 HTTP 多部分/表单数据 POST 请求向我的烧瓶应用程序发送一个压缩文件(使用 gzip 压缩)。该请求正常工作,当我将密钥的值打印到控制台时,它会打印:<FileStorage: 'compressed.zip' ('application/zip')>。这是使用 Windows zip 压缩的压缩文件,但将使用 application/gzip 类型进行压缩。压缩的.zip 文件的密钥称为compressed。我的问题是如何解压缩 gzip 文件,然后将 FileStorage 对象存储到后端的特定路径?这是我目前拥有的代码:
from flask import request, Blueprint, make_response
import gzip
blueprint = Blueprint("blueprint", __name__)
@blueprint.route("/compressed-post", methods=["POST"])
def compressed_post():
if request.method == "POST":
file = request.files["compressed"]
print(file)
return make_response("", 200)
else:
return make_response("", 400)
【问题讨论】:
-
所以你想解压gzip文件并将内容(压缩文件中的所有文件)放在一个filestorage中?
-
是的,这就是我想要做的。
-
我很快就会上传一个答案。所以只需将 zip 文件中的所有文件放在某个文件夹中,
file包含压缩文件对吗? -
是的,但正如我之前提到的,
file是一个 FileStorage 对象,所以我不知道如何处理该数据类型。 -
@Patch 你要上传答案吗?
标签: python-3.x flask httprequest gzip file-storage