【发布时间】:2012-04-25 17:15:03
【问题描述】:
我正在使用输出缓冲通过 PHP 使用代理处理程序和 readfile() 从网络共享中获取 pdf 文件。 我通过指定内容/mime 类型在新的浏览器选项卡中显示它。 (http://stackoverflow.com/questions/10121903/php-scandir-explorer-view-to-display-network-share-files-file-via-wamp-wor)
我在整个应用程序的其余部分都使用 jQuery / Ajax。 是否可以使用 ajax 将原始 PDF 内容注入 div 标签但使其正确显示?目前,所需的标头 (header("Content-type: application/pdf")) 似乎已被 ajax 请求剥离,并且显示为乱码。
编辑:谢谢大家的cmets和答案。我会更详细地回复并尽快审查我的选择。
@ Murtaza - 上面的问题链接显示了我是如何获得原始 PDF 的,此外,我还使用 $.ajax 将请求发送到 div 标签并使用了 iframe,当我将它呈现到代码中时,它可以工作作为 src=,而不是 Ajax。
@ Brad Christie / Quentin - 也许我可以使用 iFrame 或 Modal 来显示内容?我测试了 pdfobject.js,它很好,但需要链接文件(例如 /files/file.pdf)。听起来很可怕,但是如果我使用 PHP 将临时文件写入 Web 根目录然后显示呢?如果有人使用过,我认为唯一有用的可能是 jQuery PDF 库?
@ Ignacio - 我确实使用以下代码进行了尝试。它使胡言乱语。我可能做错了,因为我没有使用 iFrame 的经验。 // 其中 $filename 是原始 PDF 数据 ">
詹姆斯。
【问题讨论】:
-
我们可以看看你的表现吗?
-
您希望浏览器将包含二进制数据的
<div>视为PDF 对象?不可能...
标签: php jquery ajax content-type output-buffering