从节点服务器流式传输pdf文件只是在浏览器上显示二进制数据

kxh*_*tiz 8 pdf node.js express sails.js

我有一个提供pdf文件的节点应用程序(特别是sails app).我的服务文件代码如下所示.

request.get(pdfUrl).pipe(res)
Run Code Online (Sandbox Code Playgroud)

当我查看pdf的url时,它会使pdf变好.但有时,它只是在浏览器上呈现pdf的二进制数据,如下所示.

%PDF-1.4 1 0 obj << /Title (??) /Creator (??wkhtmltopdf
Run Code Online (Sandbox Code Playgroud)

我无法弄清楚为什么它无法正确地随机提供pdf.它是镀铬的东西吗?还是我错过了什么?

Own*_*ous 1

您可能需要application/pdf在节点响应中包含内容类型标头,以告诉收件人他们收到的是 PDF。有些浏览器足够智能,可以从数据流中确定内容类型,但您不能假设情况总是如此。