Ajax发布创建pdf的帖子

时间:2011-07-07 14:43:26

标签: php jquery ajax pdf tcpdf

我正在使用ajax发布到通过TCPDF创建PDF文档的函数。

通常,我只会对该函数执行一个正常的帖子,然后输出PDF,允许用户下载teh pdf文件。但是,我的理解是,这不适用于ajax,而我需要将pdf文件保存在服务器上,然后将文件的url返回到ajax调用。

一旦我有了网址,那么我可以做一些像

这样的事情
window.location.assign(url/to/my.pdf);

好的,所以一切正常,但不是很好。首先,pdf不会在新窗口中打开(即它当前在同一窗口中打开),其次,我更愿意强制用户下载文件而不是在浏览器中打开。

还有其他选择吗?

2 个答案:

答案 0 :(得分:1)

如果您使用Apache作为Web服务器,则可以将以下内容添加到生成PDF文件的文件夹中的.htaccess文件中以强制下载。

<Files *.pdf>
  ForceType application/pdf
  Header set Content-Disposition attachment
</Files>

答案 1 :(得分:0)

您可以通过PHP传递生成的PDF并设置其他标头以强制浏览器下载文档。请参阅php force download extension

我猜你也可以自动设置这些标题(例如特殊文件夹中的PDF文件)。