我想在浏览器中显示 PDF 文件,所以我将 PDF 发送到响应输出流。我设置了标题:
response.setHeader("Content-Disposition", "inline; filename=\"" + getFileName() + "\"");
但我对浏览器标题有疑问。FireFox 显示 servlet 标题。
我想在浏览器中显示 PDF 文件,所以我将 PDF 发送到响应输出流。我设置了标题:
response.setHeader("Content-Disposition", "inline; filename=\"" + getFileName() + "\"");
但我对浏览器标题有疑问。FireFox 显示 servlet 标题。
出现在浏览器地址栏中的请求 URL 必须包含 PDF 文件名才能使其以您想要的方式工作。如果您将 PDF servlet 映射到类似 as 的前缀 URL 模式/pdf/*
而不是类似 as 的静态路径/pdf
,这会更容易,这样它也可以在 上调用/pdf/blahblah
,/pdf/foo.ext
依此类推。
例如
<a href="pdf/filename.pdf">
结合
@WebServlet("/pdf/*")
public class PdfServlet extends HttpServlet {
@Override
public void doGet(...) {
String filename = request.getPathInfo().substring(1); // filename.pdf
// ...
}
}
另一个优点是IE 浏览器中的另存为文件名也将被修复。该浏览器即从请求 URL 的最后一个路径而不是从内容处置标头中提取它。
如果您需要为生成的HTML
页面设置标题:-
尝试这个 :
out.println(" <HEAD><TITLE>Your Title for browser</TITLE></HEAD>");
在servlet
. 然后servlet
将生成动态页面,上面的代码将标题添加到页面。