我从表单中收到一个txt文件,该表单将请求发布到django。我想压缩txt文件并将其上传到视图函数中的s3。
def s3(request):
in_memory = io.BytesIO()
zip = zipfile.ZipFile(in_memory, "a", zipfile.ZIP_DEFLATED)
zip.writestr("file.txt", request.FILES["filename"].read())
os.environ['S3_USE_SIGV4'] = 'True'
conn = S3Connection('xxx', 'xxx', host="s3-us-west-1.amazonaws.com")
bucket = conn.get_bucket('name')
k = Key(bucket)
k.key = "test.txt.zip"
k.set_contents_from_file(io.BytesIO(zip.read(name='file.txt')))
问题是保存的文件是22kb并且没有实际的文本文件(12mb)