首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

使用express发送二进制pdf文件

可以通过以下步骤实现:

  1. 首先,确保你已经安装了Node.js和express框架。
  2. 创建一个新的express应用程序,并安装相关依赖:
代码语言:shell
复制
$ mkdir myapp
$ cd myapp
$ npm init -y
$ npm install express --save
  1. 在项目根目录下创建一个名为pdfs的文件夹,用于存放PDF文件。
  2. 在项目根目录下创建一个名为app.js的文件,并添加以下代码:
代码语言:javascript
复制
const express = require('express');
const fs = require('fs');

const app = express();

app.get('/pdf', (req, res) => {
  const filePath = './pdfs/sample.pdf';
  const stat = fs.statSync(filePath);

  res.setHeader('Content-Length', stat.size);
  res.setHeader('Content-Type', 'application/pdf');
  res.setHeader('Content-Disposition', 'attachment; filename=sample.pdf');

  const stream = fs.createReadStream(filePath);
  stream.pipe(res);
});

app.listen(3000, () => {
  console.log('Server is running on port 3000');
});
  1. pdfs文件夹中放置一个名为sample.pdf的PDF文件。
  2. 启动应用程序:
代码语言:shell
复制
$ node app.js
  1. 在浏览器中访问http://localhost:3000/pdf,将会下载sample.pdf文件。

这样,你就成功地使用express发送二进制PDF文件了。

关于以上代码的解释:

  • 首先,我们引入了expressfs模块。
  • 然后,我们创建了一个express应用程序。
  • /pdf路由上,我们设置了响应头,指定了文件的大小、类型和下载方式。
  • 接着,我们创建了一个可读流,并将其管道连接到响应流中,以实现文件的传输。
  • 最后,我们启动了应用程序,并监听3000端口。

推荐的腾讯云相关产品:腾讯云对象存储(COS)。

腾讯云对象存储(COS)是一种安全、低成本、高可靠的云端存储服务,适用于存储大量非结构化数据,如图片、音视频、文档等。它提供了简单易用的API接口,方便开发者进行文件的上传、下载、管理和分享。使用腾讯云对象存储(COS),你可以将PDF文件存储在云端,并通过生成的URL链接进行访问和下载。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

领券