【发布时间】:2016-06-21 04:24:43
【问题描述】:
我正在尝试将浏览器的标题动态设置为 PDF 文档标题。但标题当前显示为文档的 URL。
我提供的 PDF 下载如下:
response.setDateHeader("Expires", 0L);
response.setHeader("Content-disposition", "inline;filename=" + title + ".pdf");
response.setContentType("application/pdf");
response.setContentLength(bArray.length);
response.getOutputStream().write(bArray);
如何在浏览器中设置标题?
【问题讨论】:
-
我只能在 iFrame 中看到这种情况。您不能从非 html 页面更改文档的标题
-
正在下载文件,正在更改网页标题。它们是两个不同的东西。在前一种情况下,您严重依赖浏览器,因为它可以在新选项卡中打开它或独立于您想要的内容下载文件。从技术上讲,在 chrome 中打开的 pdf 文档并不比 Excel 或 Calculator 更多。
-
有没有办法在刷新响应后调用一些 jquery 来更改文档标题
-
您可以发送两个请求。一方面,您打开一个新窗口,其中包含 servlet 的 URL 以下载文件。另一方面,您将 ajax 请求发送到具有不同参数的同一个 servlet,并且您的 servlet(而不是下载文件)返回可用于更改标题的信息。您必须发出两个请求的原因是您不能使用 ajax 下载文件。如果它们必须同步,您可以在 javascript 中使用 Promise 以确保在下载开始之前标题不会更改。
标签: javascript pdf servlets download title