node.js - NodeJS : Stream. pipe(Stream) 有效但 Stream.read() 无效

标签 node.js http multipartform-data

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

有趣的是,当我想访问我的请求的表单数据部分时,在我的例子中它是一个 JSON 对象,当我管道()我从多方到 stdout 的 Stream 时它起作用但是当我读取()流时,我只得到空值。

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

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 处于流模式。你可以尝试这样的事情

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
  }
}

关于node.js - NodeJS : Stream. pipe(Stream) 有效但 Stream.read() 无效,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45184537/

相关文章:

iphone - 边界如何在多部分发布请求中工作?

azure - 测试分段文件上传 Azure Function

node.js - Yeoman 生成器-角度-全栈启用 ssl

Java HTTP GET 请求给出 403 Forbidden,但在浏览器中有效

python - wsgi如何处理同名的多个请求头?

javascript - 带有 node.js 的 Axios - ReferenceError : XMLHttpRequest is not defined

java - 多部分 POST 请求不包含上传的文件

node.js - 如何利用 npm 审计?

javascript - 从js中的json表中删除用户

javascript - 如何决定何时使用 Node.js?