首页 > 解决方案 > 在反应中将“缓冲区64 61 74 61 3a 69 6d 61 67 65 2f”转换为img src

问题描述

我正在从 postgresql 数据库中检索图像数据 url 并在反应中转换回 img src。但是下面的代码不起作用,并且控制台日志时 base64 字符串有点奇怪。

const bufs = Buffer.from(returnUser[0].img);
const base64 = bufs.toString("base64");
res.json({
      userName: returnUser[0].username,
      id: returnUser[0].id,
      userImg: `data:image/jpeg;base64,${base64}`,
});
  1. 在nodejs中,我从数据库returnUser[0].img中取回的数据就像<Buffer 64 61 74 61 3a 69 6d 61 67 65 2f 6a 70 65 67 3b 62 61 73 65 36 34 2c 2f 39 6a 2f 34 41 41 51 53 6b 5a 4a 52 67 41 42 41 51 45 41 53 41 42 49 41 41 44 ... 67141 more bytes>

  2. 我控制台base64就像ZGF0YTppbWFnZS9qcGVnO2Jhc2U2NCwvOWovNEF...然后我将所有内容复制base64 stuff到在线解码网站。https://base64.guru/converter/decode/file。返回的结果是我想要的:data:image/jpeg;base64,/9j/4AAQSkZJRgABAQEASABIAAD//gA7Q1JFQVRPUjogZ2QtanBlZyB2MS4wICh1c2luZyBJSkcgSlBFRyB2NjIpLCBxdWFsaXR5ID0gOTIK/9sAQwAG...

  3. 我将上述结果复制到反应图像中,它可以工作。

但我不知道如何在 nodejs 中得到这个结果。有没有我遗漏的代码? data:image/jpeg;base64,/9j/4AAQSkZJRgABAQEASABIAAD//gA7Q1JFQVRPUjogZ2QtanBlZyB2MS4wICh1c2luZyBJSkcgSlBG...

非常感谢您的回答!

标签: node.jsreactjsbase64buffer

解决方案


推荐阅读