我有一个下载按钮,点击它我会收到提示要求保存/打开。
如果我点击保存,文件保存时使用正确的名称(通过内容处置在标题中指定), 但如果我点击打开它会打开一个不同的名称(我的动作类的名称)。
我希望它以与标题中指定的名称相同的名称打开。
有人可以帮我这个,我使用IE8,Excel 2007。
答案 0 :(得分:0)
当您使用IE时确实如此。这个奇怪的浏览器完全忽略Content-Disposition
标题,而是使用请求URI的最后一个路径部分,它将是您在<form>
中指定的表单操作URL。
修复它的唯一方法是让表单提交到一个URL,其中包含文件名作为最后一个路径部分。
<form action="fileservlet/filename.ext" method="post">
在上面示例中映射到/fileservlet/*
的URL模式的servlet中,您可以根据需要抓取该部分,如下所示:
String filename = request.getPathInfo().substring(1); // filename.ext
// ...