如何在浏览器中设置pdf文件的标题?

hka*_*era 7 pdf httpresponse http-headers node.js

我正在使用 nodejs 服务器来提供静态文件。提供 pdf 文件时,浏览器将标题显示为 pdf 路径的 URL。

127.0.0.1:8080/文档/样本

如何将其设置为自定义标题,例如“示例”

我试过以下事情,但没有运气:

  1. res.setHeader('Content-Disposition', 'inline;filename="sample.pdf"');
  2. 将pdf文件的元标记设置为“样本”

任何帮助都感激不尽。

Che*_*hev 7

如果您使用的是静态文件服务器,那么是的,您将其作为下载提供。现代浏览器通常包含一个内置的 PDF 查看插件,因此浏览器不会询问用户保存文件的位置,而是直接在浏览器选项卡中显示 PDF。它仍然下载了它,在这种情况下它只是将它保存到您机器上的某个临时缓存中。

我的意思是,在这种情况下您无法控制浏览器标题,因为它只是浏览器试图变得友好并为用户提供方便。PDF 文件本身不知道它是在浏览器的内置查看器中还是在桌面上的 Adob​​e Reader 中显示。没有可以发送的 HTTP 标头来设置标题,因为浏览器希望从 HTML 或在实际网页上运行的 JavaScript 设置页面标题。

现在,如果您要使用某种 PDF 查看器将 PDF 文件嵌入到 HTML 页面中,那么您可以使用简单的<title>some title</title>标签或document.title = 'some title';从 JavaScript调用来控制页面标题。这是有效的,因为浏览器正在呈现您控制的实际网页,而该页面恰好有一个嵌入式 PDF 查看器。

这是一个可嵌入的 PDF 查看器的示例。http://pdfobject.com/