Blob to Base64 in NodeJS without FileReader(在没有FileReader的NodeJS中将BLOB转换为Base64)
问题描述
我当前有一个‘image/jpeg’类型的blob,需要将其转换为base64字符串。我的所有代码都在使用NodeJS的独立javascript文件中,没有与任何html文件连接。我研究过的将blob转换为base64的每个方法都涉及到使用FileReader类,该类要求javascript位于html中,所以这是不可能的。我发现的唯一解决办法是使用此行代码将blob转换为缓冲区,然后转换为base64。
base64 = new Buffer( blob, 'binary').toString('base64');
但这仅返回错误:第一个参数必须是字符串、缓冲区、ArrayBuffer、Array或类似数组的对象。
我完全被难住了.有什么建议吗?
NodeJS
如果您在NodeJS中使用node-fetch从推荐答案读取数据,您不希望获取BLOB,而希望获取缓冲区。然后,您可以轻松转换为Base64。
const b64 = await fetch(url)
.then((response) => response.buffer())
.then((buffer) => {
const b64 = buffer.toString('base64');
return b64;
})
.catch(console.error);
这篇关于在没有FileReader的NodeJS中将BLOB转换为Base64的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
本文标题为:在没有FileReader的NodeJS中将BLOB转换为Base64
基础教程推荐
- fetch 是否支持原生多文件上传? 2022-01-01
- Fabric JS绘制具有活动形状的多边形 2022-01-01
- Bokeh Div文本对齐 2022-01-01
- 如何添加到目前为止的天数? 2022-01-01
- 在 contenteditable 中精确拖放 2022-01-01
- npm start 错误与 create-react-app 2022-01-01
- 即使用户允许,Gmail 也会隐藏外部电子邮件图片 2022-01-01
- Bootstrap 模态出现在背景下 2022-01-01
- 检查 HTML5 拖放文件类型 2022-01-01
- 原生拖动事件后如何获取 mouseup 事件? 2022-01-01
