下载zip文件时的Python烧瓶损坏

时间:2018-06-27 12:13:51

标签: python flask zip runtime-error unzip

我写了以下python flask代码来下载zip文件。

@ns.route('/zip_file_download', strict_slashes=False)
class ZipDownload(Resource):
  def get(self):
     output_path = os.path.abspath(os.path.join(os.getcwd(), './out'))
     out_file_name = os.path.join(output_path, 'sample.zip')
     r = send_file(out_file_name, mimetype='application/octet-stream', 
     attachment_filename='sample.zip', as_attachment=True)
    return r

这将下载zip文件,但是在提取zip文件时会出现错误-错误-21-不是目录-无法扩展,可能是因为它已损坏。我也尝试过send_from_directory,但同样的错误也悄悄出现在那。我在Mac机器上进行开发,但是在Windows或其他操作系统上打开时,下载的文件也损坏了。有什么建议吗?

PS:此外,仅在Mac机器上运行API时才会发生此问题。从linux机器上的Windows运行时,一切似乎都很好。这很奇怪。

1 个答案:

答案 0 :(得分:0)

如果您使用的是flask-restplus,并且正在使用旧版本,请将其升级到最新版本,那么这对我有用。