【问题标题】:How to receive Postman binary files in Express.js?如何在 Express.js 中接收 Postman 二进制文件?
【发布时间】:2021-10-04 03:12:09
【问题描述】:

我想在 Express.js 中以二进制形式发布图像。我正在尝试在 express.js 中获取邮递员的二进制文件选项。但我无法在 express api 中获取身体数据。我如何在 express api 中获取二进制正文。

【问题讨论】:

  • 看起来您使用的是 GET 请求而不是 POST 请求,请在 Postman 中更改请求类型,看看是否有帮助。
  • 我放错了截图。我也使用过帖子,但它不起作用。
  • 您能分享一下您在快递方面的工作吗?您如何尝试获取数据?你有什么收获吗?
  • 我已经用 req,body 和 request.file 试过了,但是不行。
  • 如何你用req.body试试?你有read the documentation吗?它说您需要提供正文解析中间件。你用的是什么中间件?提供minimal reproducible example

标签: express postman body-parser


【解决方案1】:

消息以多个块发送。您需要使用 req.on 并将它们连接起来。

在控制器内部做这样的事情:

const dataChunks: any = []; // Hold data chunks
let content: string | any = null; // Hold file string

req.on('data', (chunk) => {
   // Concatenate each chunk of the message
   dataChunks.push(chunk);
});
req.on('end', () => {
   // Create content
   content = Buffer.concat(dataChunks);

   // Do further processing in here + return HTTP status
});

此代码将遍历所有块,将它们连接起来,并在“结束”时完成获取文件输入并执行其余处理。

【讨论】:

  • 您的答案可以通过添加有关代码的作用以及它如何帮助 OP 的更多信息来改进。
猜你喜欢
  • 2020-04-11
  • 2018-06-27
  • 1970-01-01
  • 1970-01-01
  • 2018-01-29
  • 1970-01-01
  • 2015-05-11
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多