jquery - 如何从Nodejs接收base64数据并使用jquery显示
问题描述
我在我的数据库中使用图像或其他时间的文件作为 blob。检索到该 blob 后,我将其放入缓冲区并转换为 base64,如下所示:
file = Buffer.from(blob,'binary').toString('base64');
res.send(file)
现在,在我的 jquery 中:
在发布路由被触发后成功时,我想接收文件:
success: function(data){
console.log(data)
console.log('image uploaded and form submitted');
}
但是console.log
显示整个文件就是这样的:
W29iamVjdCBPYmplY3Rd
根据我对缓冲区的理解,它只是一个用于一次传输大量数据的小内存分配。所以我想我只得到第一个缓冲区?如何获得整个缓冲区?
解决方案
W29iamVjdCBPYmplY3Rd 是 [object Object] 的 base64
您必须检查blob
它实际上是什么,它不是数据字符串,它是一个 javascript 对象,包含数据库的整行或其他东西。
objects.toString() 在传入 buffer.from 时被调用
我建议使用console.log(blob)
,你会很高兴。
推荐阅读
- python - 如何删除嵌套在列表中的元组?
- math - 贝塞尔曲线或 b 样条的通用数据结构是什么?
- python - 计算子列表中的出现次数
- json - 在flutter中通过代码删除本地JSON文件
- html - 菜单栏不显示
- java - java中如何使用没有对象的类名来访问其内容?
- docker - 带有 Docker 和 shell 错误的 Gitlab Runner — 权限被拒绝
- spring-boot - Java JPA:如何使用多个 DB 用户?
- python - Keyerror Python Dict 从错误交易应用程序中引发 KeyError(key)
- node.js - Sequelize PostgresSQL - 列不存在时