在我的jsp页面中,我提供了一个链接来查看/下载扫描文档。
点击该链接后我可以正确查看文档,但我希望jsp在打开该文档之前提示打开,保存或取消选项。
我是否必须使用响应对象进行一些更改,或者是否因为浏览器设置而发生了变化.. ??
感谢..... !!!
我已经编写了这样的控制器类:
public void fileUploadOption(HttpServletRequest request,HttpServletResponse response) {
try {
// get your file as InputStream
InputStream is = new FileInputStream(new File(\\..file..\\));
IOUtils.copy(is, response.getOutputStream());
response.flushBuffer();
} catch (IOException ex) {
throw new RuntimeException("IOError writing file to output stream");
}
}
答案 0 :(得分:5)
您需要将Content-Disposition
标头设置为attachment
。这将强制另存为对话框。
在之前添加此行,您将任何字节写入响应正文:
String filename = file.getName();
response.setHeader("Content-Disposition", "attachment;filename=\"" + filename + "\"");
顺便说一句,在这种情况下,“上传”是错误的术语。我将该方法重命名为fileSendOption
或sendFile
或其他内容。