gpt4 book ai didi

node.js - 如何从流、文件或 base64 字符串在 Node (服务器端)中创建 blob?

转载 作者:行者123 更新时间:2023-12-04 14:00:40 33 4
gpt4 key购买 nike

我正在尝试从我从 pdfmake 创建的 pdf 创建一个 blob,以便我可以将它发送到仅处理 blob 的远程 api。

这是我获取 PDF 文件的方式:

var docDefinition = { content: 'This is an sample PDF printed with pdfMake' };
pdfDoc.pipe(fs.createWriteStream('./pdfs/test.pdf'));
pdfDoc.end();

上面的代码行确实生成了可读的 pdf。

现在我怎样才能从那里得到一个 blob?我尝试了很多选项(使用 blob-stream 模块从流创建 blob,使用 fs 从文件创建,使用 b64toBlob 从 base64 字符串创建它)但所有这些都需要在某些时候使用构造函数 Blob即使我需要模块 blob,我也总是收到错误消息:
TypeError: Blob is not a constructor

经过一些研究,我发现 Blob 构造函数似乎只支持客户端。

我发现的所有 npm 包似乎处理这个问题似乎只在客户端工作:blob-stream、blob、blob-util、b64toBlob 等。

那么,如何在 Node 上创建 Blob 服务器端?

我不明白为什么几乎没有人还需要创建 Blob 服务器端?我能找到的关于这个主题的唯一线索是 this one .

根据该线程,显然:

The Solution to this problem is to create a function which can convert between Array Buffers and Node Buffers. :)



不幸的是,这对我没有多大帮助,因为我显然在这里缺乏一些重要的知识来理解这一点。

最佳答案

使用 node-blob npm 包

const Blob = require('node-blob');

let myBlob = new Blob(["something"], { type: 'text/plain' });

关于node.js - 如何从流、文件或 base64 字符串在 Node (服务器端)中创建 blob?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47960996/

33 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com