【问题标题】:sending images to Postgres using express/multer使用 express/multer 将图像发送到 Postgres
【发布时间】:2020-08-20 17:42:15
【问题描述】:

所以我使用邮递员通过快递库将图像发送到邮递路线。我从中得到二进制东西的缓冲区,它不允许我处理东西。使用 body-parser 会有所帮助吗?

这是我上传文件的地方:

app.post('/uploads', upload.single('upload'), async (req, res) => {
    const imgBuffer = req.file.buffer
    console.log(imgBuffer.toString())
    // await client.query('UPDATE rooms SET room = $1', [imgBuffer])
    res.send()
})

这是我在邮递员上发出请求后的输出:

这不允许我在 postgres 上存储任何东西。好吧,我看到使用base64会更好存储......我真的不知道。有人可以帮忙吗?

【问题讨论】:

  • 可以用base64存储;但通常更好的选择是将图像存储在磁盘上,并将对路径/文件名的引用存储在数据库中。
  • 好的,但是我如何将此缓冲区转换为 base64?
  • 将缓冲区转换为字符串需要编码
  • var imgData = Buffer.from('abc')'; imgData === Buffer.from(imgData.toString('base64'), 'base64').toString() // true

标签: javascript node.js postgresql express multer


【解决方案1】:

不确定,但你搜索过这个

new Buffer(data).toString('base64')

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2016-09-14
    • 1970-01-01
    • 2017-02-02
    • 2017-05-22
    • 2020-01-30
    • 2020-12-25
    • 2016-09-25
    • 1970-01-01
    相关资源
    最近更新 更多