我有一个 servlet,它根据请求中的一些参数在响应中生成 PDF。当我尝试在 IE 中打开/下载此文件时,我收到以下消息:
“无法从 [站点] 下载 [文件名]。无法打开此 Internet 站点。请求的站点不可用或找不到。请稍后再试。”
这是我设置的响应:
response.setHeader("Content-Disposition", "attachment;filename=" + title + ".pdf");
response.setContentType("application/pdf");
其他浏览器一切正常。
更新:
我试过内联而不是附件。这将打开一个新窗口而不是打开/保存对话框(我希望有对话框),错误消息消失了,但新窗口在 IE 中只是空的。仍在使用其他浏览器。
我尝试了简单的、双引号和不包含任何未转义字符的文件名。双引号和无引号没有区别,但是单引号会附加到文件名中,我当然不想要。
文件名不包含非转义字符。
我已经检查了这个页面上的测试,它说所有浏览器都通过了带有文件名的附件,没有引号。这是从一开始就使用的。
添加 Content-Lenght 标头没有区别。
顺便说一句,飞碟是用来制作 PDF 的。