NodeJS:Stream.pipe(stream)工作,但Stream.read()不

我是NodeJS的新手,我基本上想做的是通过HTTP将.pdf上传到我的服务器。 我正在为Content-Type multipart / form-data使用POST rquest。 在NodeJS中,我使用多方来parsing我的请求。

有趣的是,当我想访问我的请求的表单数据部分,在我的情况下,这是一个JSON对象,当我pipe()从多方到标准输出的stream,但是当我读()stream,我只得到null。

这是我的代码(可能)重要的一部分:

form.on('part', (part) => { // part is the Stream returned by multiparty if(!part.filename) { // only fields, not files console.log(part.read()); // output is null part.pipe(process.stdout); // output is my JSON object part.resume(); } } 

我没有得到任何错误。

我很抱歉,因为我犯了一个真正的转储错误…

提前致谢,

路易斯!

Perheps part处于stream动模式。 你可以尝试这样的事情

 form.on('part', (part) => { // part is the Stream returned by multiparty if(!part.filename) { // only fields, not files part.on('data', chunk => { console.log(chunk.toString()) }) .on('error', console.error) // if stream emits errors you should handle them } }