Express.js - 如何将base64字符串下载为PDF文件

编程代码JS

1个回答

写回答

Xuchunyang

2025-06-13 04:30

+ 关注

JS
JS

如何使用Express.JS将base64字符串下载为PDF文件

Express.JS是一个流行的Node.JS框架,用于构建Web应用程序和API。在某些情况下,我们可能需要将base64字符串转换为文件并下载,例如将base64字符串转换为PDF文件并提供下载链接。本文将介绍如何使用Express.JS实现这一功能,并提供相应的案例代码。

步骤1:安装依赖

首先,我们需要安装一些必要的依赖项。在命令行中,进入项目目录并运行以下命令:

bash

npm install express fs path

这将安装Express.JS框架以及用于文件操作的fs和path模块。

步骤2:创建Express.JS应用程序

接下来,我们将创建一个简单的Express.JS应用程序。在项目目录中创建一个名为app.JS的文件,并将以下代码添加到文件中:

Javascript

const express = require('express');

const fs = require('fs');

const path = require('path');

const app = express();

// 设置静态文件目录

app.use(express.static(path.join(__dirname, 'public')));

// 定义路由

app.get('/download', (req, res) => {

// 获取base64字符串

const base64String = req.query.base64String;

// 将base64字符串转换为Buffer

const buffer = Buffer.from(base64String, 'base64');

// 将Buffer写入文件

fs.writeFile('public/file.pdf', buffer, (err) => {

if (err) {

console.error(err);

return res.status(500).send('Internal Server Error');

}

// 提供下载链接

const file = path.join(__dirname, 'public/file.pdf');

res.download(file);

});

});

// 启动服务器

app.listen(3000, () => {

console.log('Server is running on port 3000');

});

上述代码创建了一个基本的Express.JS应用程序,并定义了一个名为/download的路由。当访问该路由时,应用程序会获取名为base64String的查询参数,并将其转换为Buffer。然后,应用程序将Buffer写入名为file.pdf的文件中,并提供下载链接。

步骤3:测试应用程序

保存并关闭app.JS文件后,在命令行中运行以下命令启动服务器

bash

node app.JS

服务器将在端口3000上启动。现在,我们可以通过浏览器或API测试下载功能。在浏览器中访问http://localhost:3000/download?base64String=BASE64_STRING,将BASE64_STRING替换为实际的base64字符串。服务器将下载名为file.pdf的文件。

本文介绍了如何使用Express.JS将base64字符串转换为PDF文件并提供下载链接的方法。通过简单的几个步骤,我们可以轻松实现这一功能。希望本文对你有所帮助!

举报有用(4分享收藏

Copyright © 2025 IZhiDa.com All Rights Reserved.

知答 版权所有 粤ICP备2023042255号