我有一个URL,导致Web服务器在打开时生成PDF。是否可以使用Java将此PDF文档保存到磁盘(客户端)?当PDF已经作为Web服务器上的文档存在时,我发现了许多这样的示例,但是这些示例的代码似乎在Web服务器开始创建内容之前不起作用。链接打开(至少这是我此时的印象)。
我可以点击链接来制作PDF。该链接的HREF是:
<a href="javascript:open_window('ReportDisplay.cfmincidentID=223189&cs=377041BA2467C3CEA7FD989A12126E0E&services=2815&format=1&UniqueID=651F76E4E5691207B9B2AF1F51A780AA')">
<img src="../../Images/pdf-small.gif" alt="Report" border="0" height="15" width="15">
</a>
我构建了一个完整的URL,包括协议等,我可以将完整的URL粘贴到浏览器的位置栏中。实际上这确实在当前窗口中生成PDF。所以,这就是我试图捕获到本地磁盘上的文件。
答案 0 :(得分:0)
您目前正在提供PDF 内嵌,而您希望将其更改为附件。请参阅问题Content-Disposition:What are the differences between "inline" and "attachment"?的答案,了解其中的区别。
如果您使用Content-Disposition
标题“内联”,则PDF将显示在浏览器窗口中。如果您使用Content-Disposition
标题“附件”,将打开一个对话框,询问最终用户他想要保存PDF的位置。
您无法在最终用户的计算机上“自动”保存PDF,因为您不了解最终用户的操作系统和磁盘组织。如果他在Windows上,路径C:/temp
可能会存在,但如果他在Mac或Linux机器上,那么该路径将不存在。这就是为什么你总是需要在客户端使用“另存为”对话框。