PDF文件在服务器端生成并推送到客户端进行下载。虽然下载适用于Windows上的所有浏览器,但在IPAD上失败。 请指教。PDF文件下载不适用于iPad特定浏览器
规格:OS 6,使用Safari 6.1,Chrome的23.0.1271.100
请注意:在这个应用PDF不会下载到一个新的URL(NO重定向)。
一般行为:IPad浏览器(safari/chrome)不支持下载窗口,因此它预计会打开pdf并提供选项来查看PDF兼容的应用程序。目前没有发生。
当调试下载下面的servlet的动作代码,在服务器,但浏览器在iPad上成功生成PDF文件不显示:-(
代码示例:
/**设置响应头**/
response.setHeader("Content-Type", "application/pdf");
response.setHeader("Content-Disposition", "attachment;filename=sample.pdf");
response.setHeader("Connection", "close");
response.setHeader("Cache-Control","cache");
response.setHeader("Pragma","cache");
response.setDateHeader ("Expires", dt.getTime() + 100000);
/**写入输出**/
InputStream stream = info.getInputStream();
OutputStream os = response.getOutputStream();
try {
response.setContentType(contentType);
copy(stream, response.getOutputStream());
}
finally {
if (stream != null) {
stream.close();
}
}
1. Content-Disposition“inline”在OS上似乎起作用。试用Safari和Chrome浏览器。 2.有趣的一点是setHeader(Content-Type,xxx)v/s setContentType 尝试过排列组合并没有帮助Ipad,但在Windows上Firefox明确显示setContentType是必须的。 我的问题仍未解决。你的洞察力会有很大的帮助。 –