Django 1.7,Python 3.4,windows apache 2.4.12 + wsgi
在我的程序中,我生成一些csv文件并将它们放在一个zip文件中。我想让用户下载zip文件,强制下载(生成文件并呈现响应后)或单击按钮(显示结果后,用户必须单击按钮进行下载。)
目前,一旦在服务器上生成zip文件,我就强迫他们下载。
我引用了以下链接,并在下面提供了我的代码。但总是给我这个错误"' charmap'编解码器不能解码位置80中的字节0x8d:字符映射到"我尝试用utf-8和ascii设置它,并且会给出类似的错误。
参考链接:
任何人都知道为什么我会收到此错误以及如何使其生效?
非常感谢!
zip_filename = time.strftime("%Y%m%d") + ".zip"
with zipfile.ZipFile(zip_filename, mode='a', compression=zipfile.ZIP_DEFLATED) as zf:
for s in sql_request:
// generate csv files
zf.write(csv_file)
// close zf
zip_file = open(zip_filename, 'r')
response = HttpResponse(zip_file, content_type='application/force-download')
response['Content-Disposition'] = 'attachment; filename="%s"' % 'foo.zip'
return response