如何在node.js中获取base64字符串的字节长度?

Bab*_*abr 2 node.js

我想计算作为 base64 编码字符串接收的图像文件的大小,例如:

'data:image/png;base64,aBdiVBORw0fKGgoAAA...'
Run Code Online (Sandbox Code Playgroud)

为了确保文件不大于特定大小,比如 5MB。

如何在 node.js 中实现这一点?

我在这里看到过类似的问题但无法在我的节点应用程序中应用答案:

SyntaxError: Unexpected token :
Run Code Online (Sandbox Code Playgroud)

chr*_*con 8

您需要删除数据...部分

const img = 'data:image/png;base64,aBdiVBORw0fKGgoAAA';
const buffer = Buffer.from(img.substring(img.indexOf(',') + 1));
console.log("Byte length: " + buffer.length);
console.log("MB: " + buffer.length / 1e+6);
Run Code Online (Sandbox Code Playgroud)

  • 您需要添加 `'base64'` 作为 `Buffer.from()` @bambam 的第二个参数 (2认同)