如何在 Express 中处理二进制 post 数据?

Str*_*ch0 2 image node.js express

我想以二进制形式将图像发布到我的 Express 应用程序。

我假设它应该通过 req.body对象中但需要某种形式的中间件才能处理二进制数据?

当我从邮递员发送二进制图像并尝试记录 req.body 时,对象为空。

我使用 express-generator 作为锅炉板,body-parser如下所示:

app.use(bodyParser.json());
app.use(bodyParser.urlencoded({ extended: false }));
Run Code Online (Sandbox Code Playgroud)

我看了一下 Multer,但认为这仅适用于多部分数据

还看了busboy,但不知道它是否会处理二进制数据。

我是否正确地认为帖子数据仍会在 req.body 中通过?我需要什么中间件来处理二进制数据?

谢谢

Str*_*ch0 5

我最终使用的方法:

const multer  = require('multer')
const storage = multer.memoryStorage()
const upload = multer({ storage: storage })

router.post('/upload', upload.single('image'), function(req, res, next) {

  const image = req.file.buffer

});
Run Code Online (Sandbox Code Playgroud)