我正在使用动态jasper报告在spring mvc 3中创建pdf报告。我在将报告写入流之前设置这些标题。
response.setHeader("Content-Disposition", "inline; filename=" + fileName);
response.setContentType("application/pdf");
报告生成并在浏览器中正确显示,但在我尝试保存时,它会忽略其名称,我在此设置名称 fileName 。
response.setHeader("Content-Disposition", "inline; filename=" + fileName);
可能是什么问题。
答案 0 :(得分:2)
使用attachment
,文件将正确提供所提供的名称。当inline
时,浏览器似乎忽略filename
,并且通常在保存内联内容时将URL的servletname部分作为默认名称。
如果合适,您可以尝试将该URL映射到适当的文件名。例如,使用<servlet-mapping>
。我不熟悉spring mvc,所以也许有一个等价的。
以下是与SO相关的问题:Securly download file inside browser with correct filename
您可能还会发现此链接很有用:Filename attribute for Inline Content-Disposition Meaningless?