下载档案响应损坏文件

时间:2010-04-03 00:40:50

标签: python django

        wrapper = FileWrapper(file("C:/pics.zip"))
        content_type = mimetypes.guess_type(result.files)[0]
        response = HttpResponse(wrapper, content_type=content_type)
        response['Content-Length'] = os.path.getsize("C:/pics.zip")
        response['Content-Disposition'] = "attachment; filename=pics.zip"
        return response

pics.zip是一个有效的文件,里面有3张图片。

服务器响应下载,但是当我要打开zip时,winrar说This archive is either in unknown format or damaged!

如果我更改文件路径并将文件名更改为有效图片C:/pic.jpg也会损坏。

此下载视图中缺少什么?

1 个答案:

答案 0 :(得分:2)

问题是你不是以二进制文件的形式阅读:) 这应该有效:

wrapper = FileWrapper(file("C:/pics.zip", 'rb'))