我有一个在IFrame中显示pdf的Web应用程序。我最近做了一个更改,开始使用Django提供PDF,而不是允许Apache提供PDF。最初,我使用FileWrapper approach来返回文件。这在所有浏览器上运行良好,除了崩溃的IE 8(可能是其他版本的IE,没有测试)。
我想出了如何解决这个问题,但要弄清楚这是一个很痛苦所以我在这里发布答案。
答案 0 :(得分:3)
解决方案是使用mod_xsendfile作为suggested in this post并进行以下调整:
mimeType,_ = mimetypes.guess_type(filePath)
response = django.http.HttpResponse(mimetype = mimeType)
response['Accept-Ranges'] = 'bytes'
response['X-Sendfile'] = filePath
return response
除了正确使用IE / iframe之外,还可以恢复文件下载。