将 base64 数据字符串转换为 PDF 文件以从 API - NodeJS 下载

Convert base64 string of data into PDF file for download from API - NodeJS

我配置了一个 nodeJS API,它连接到另一个 API 并检索一个数据对象,它是一个 Base64 字符串。

调用API端点的客户端需要下载由base64数据制作的PDF文件。

如何将数据返回给客户端,以便converted/prompt从浏览器下载?这应该在客户端还是服务器端完成?

Base64 是 HTML 安全的,并且在您想要将数据 URL 创建为 link 时具有实用性。这将允许预加载 PDF,以便用户在单击 link.

时立即获取文件

但是,你只是想直接下载,所以只需要在服务器端将其转换为二进制,以减少与base64相关的网络开销,并保持客户端尽可能轻(加载更少的数据,使用更少的资源) .

只需在响应中设置正确的 content-type(application/pdf 如果您希望使用浏览器的 PDF 插件打开 PDF,或者 application/octet-stream 如果您希望触发常规下载)然后用经典 <a href=... 创建一个 link 到它。您还可以执行以下操作之一: