node.js - 在反应中将“缓冲区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}`,
});
在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>
我控制台
base64
就像ZGF0YTppbWFnZS9qcGVnO2Jhc2U2NCwvOWovNEF...
然后我将所有内容复制base64 stuff
到在线解码网站。https://base64.guru/converter/decode/file。返回的结果是我想要的:data:image/jpeg;base64,/9j/4AAQSkZJRgABAQEASABIAAD//gA7Q1JFQVRPUjogZ2QtanBlZyB2MS4wICh1c2luZyBJSkcgSlBFRyB2NjIpLCBxdWFsaXR5ID0gOTIK/9sAQwAG...
我将上述结果复制到反应图像中,它可以工作。
但我不知道如何在 nodejs 中得到这个结果。有没有我遗漏的代码?
data:image/jpeg;base64,/9j/4AAQSkZJRgABAQEASABIAAD//gA7Q1JFQVRPUjogZ2QtanBlZyB2MS4wICh1c2luZyBJSkcgSlBG...
非常感谢您的回答!
解决方案
推荐阅读
- java - Spring Data JPA Query方法重复对象
- spring-boot - 使用千分尺时的 Prometheus 端点错误
- asp.net - 页面生成以适应列表溢出
- android - Android位置:绝对不应该在有边框的容器内被切断
- azure-active-directory - 通过应用注册门户创建的应用在 Azure Active Directory->应用注册列表中不可见
- angular - Angular 2 ngOnchange 事件被调用,与任何更改无关
- python - 如何将函数输出用作另一个函数的输入
- sbt - 如何指定包含空格的任务键名称?
- javascript - 在没有 FileUploader 的 SAPUI5 中上传图像
- json - 在按钮上从 json 更改数据单击 React-Native