3

在我们正在构建http://ovsd.nutrislice.com/wellness/的网站页面上,pdf 下载链接(“下载问题”)在 Chrome 的 PDF 查看器中加载时卡住,但在所有其他浏览器中通过触发下载。右键单击+“另存为”在 Chrome 中有效。我意识到 Chrome 是唯一具有内置默认 pdf 查看器的浏览器。

我想我们可以指示人们右键单击然后“另存为”,但我想看看是否有人可以看到 html 或服务器响应中的问题,这会导致 chrome 像那样失败。

它不是位于某处服务器上的传统直通文件下载。我们使用 Heroku,我目前正在将 pdf 存储在数据库中(我意识到这样做的缺点,但它是一个比目前在 S3 上管理异地文件更简单的系统)。我正在通过 Django View 动态生成响应,所以我想知道响应标头中是否缺少某些内容。

谢谢!

4

2 回答 2

4

看起来像一个糟糕的内容类型:

Content-Type:('application/pdf', None)

检查您为响应分配内容类型的代码。看起来你正在发送一个 tuple 而不是 just application/pdf

于 2012-11-09T19:24:17.747 回答
3

就像提到的@dgel 一样,您的内容类型不正确:

$ curl -I http://ovsd.nutrislice.com/dbfiles/cms/resources/Vol5_Issue1_5_Dos_and_Donts_for_Supermarket_Survival.pdf
HTTP/1.1 200 OK
Access-Control-Allow-Methods: POST,GET,OPTIONS,PUT,DELETE
Access-Control-Allow-Origin: *
Cache-Control: max-age=90000
Content-Type: ('application/pdf', None)       # <- Incorrect
Date: Fri, 09 Nov 2012 19:25:06 GMT
Expires: Fri, 09 Nov 2012 23:20:28 GMT
Last-Modified: Thu, 08 Nov 2012 22:20:28 GMT
Server: gunicorn/0.14.6
Connection: keep-alive

Content-Length此外,添加标题可能是个好主意。

于 2012-11-09T19:28:37.163 回答