我必须在“黑盒子”设备上使用相当基本的Python 2.6(所以没有Django或非标准库)。
我必须:
我使用两个Python脚本 - makePDF和getPDF 在makePDF结束时,我有一个有效的/tmp/xxx.pdf坐在服务器上 - 我可以通过SCP转移它,它在杂技演员打开没有问题 - 没有问题(它应该总是低于100k - 2mb大小顺便说一句)
我的问题是将文件发送回浏览器
这是getPDF
#!/usr/bin/python
from tempfile import *
tempfile=gettempdir()+"/xxx.pdf"
f = open(tempfile, 'r')
pdf = f.read()
f.close()
print 'Content-Type: application/pdf'
print pdf
看起来它应该正常工作 - 如果我在开发工具中看到http对话,我可以看到返回了169k的内容长度,但它没有显示响应数据,如果使用我选择的武器,'Advanced Rest Client 'chrome extn我看到一个包含看似kosher pdf文件的响应:
%PDF-1.4
1 0 obj
<<
/Title (��Briefing Pack)
/Creator (��)
/Producer (��wkhtmltopdf)
/CreationDate (D:20131101095256+10'30')
>>
... etc
浏览器显示“无法加载PDF文档”错误
我认为很明显我是一个偶尔的Python用户而不是常规用户,所以我怀疑我错过了一些相当基本的东西......
答案 0 :(得分:5)
在申请/ pdf之后添加'\ n'后,它对我有用:
print "Content-type: application/pdf\n"
print pdf