Javascript Node.js web服务器;显示pgp asc文件的内容,不提示下载

Javascript Node.js web服务器;显示pgp asc文件的内容,不提示下载,javascript,webserver,download,Javascript,Webserver,Download,如果单击此链接: 您的浏览器尝试下载该文件,而不是为需要读取该文件的api和站点显示该文件的文本内容 Mime类型,对吗?知道如何告诉我的nodejs服务器这样做吗?您需要设置内容类型标题。如果正确设置了内容类型标题,浏览器将显示该文件,而不是提供下载 与 我可以看到内容类型当前为 Content-Type: application/pgp-signature 浏览器倾向于提供保存应用程序文件类型,但显示文本/普通文件类型。 下面是解释为什么text/plain适用于此以及为什么需要字符集的

如果单击此链接:

您的浏览器尝试下载该文件,而不是为需要读取该文件的api和站点显示该文件的文本内容


Mime类型,对吗?知道如何告诉我的nodejs服务器这样做吗?

您需要设置内容类型标题。如果正确设置了内容类型标题,浏览器将显示该文件,而不是提供下载

我可以看到内容类型当前为

Content-Type: application/pgp-signature
浏览器倾向于提供保存应用程序文件类型,但显示文本/普通文件类型。 下面是解释为什么text/plain适用于此以及为什么需要字符集的示例

从总体上看,这样做的方式可能是:

response.setHeader("Content-Type", "text/plain;charset=UTF-8");
如果不能直接在文件中修改响应,则必须为您配置web服务器。当Web应用程序未显式提供扩展名时,Web服务器通常根据扩展名映射文件类型。例如,如果您使用的是Apache server,则可以将其添加到.htaccess文件中以解决此问题:

AddType text/plain;charset=UTF-8 .asc

我无法编辑asc pgp/gpg文件,这是我的公用sig密钥。我希望在node.js服务器上的server.js文件中添加一两行代码。如果单击我上面发布的链接,它会下载该文件。我不想那样。我希望浏览器显示该asc文件的内容…如果您正确设置了内容类型标题,您的浏览器将显示该文件,而不是提供下载。我们没有运行apache,并且根目录中没有.htaccess文件。必须告诉server.js文件如何处理asc文件……听起来您已经将node.js配置为服务于静态文件。似乎有几个模块可以完成这项工作,它们都有不同的方法来配置mime查找。它可能是从全局/etc/mime.types文件中获取类型,或者是硬编码的。您可以尝试在/etc/中更改mime类型,或者尝试将文件重命名为.txt扩展名。
AddType text/plain;charset=UTF-8 .asc