0

我正在使用以下代码发出请求:

 Request {
  url: 'http://localhost:10002/asset/upload'
  method: 'POST'
  formData:
    filename: fileName
    code: imageCode
    type: 'raw'
    event_id: eventId
    file: fs.createReadStream(filePath)
    slug: "testing-the-stuff"

在我的快速应用程序中,我有一条这样的路线:

  app.post "/asset/upload", (req, res, next) ->
    assetController.upload req, res, next  

还有一个看起来像这样的控制器:

exports.upload = (req, res, next) ->
  console.log req.body
  res.json 'upload'

一切正常,没有失败,但身体总是空的?我不确定是否有其他访问方式"formData"

作为参考,我正在使用bodyparser

4

1 回答 1

0

经过一些研究,我发现 bodyparser 无法处理多部分表单数据。为了解决这个问题,我简单地将 bodyparser 替换为 busboy-body-parser

busboyBodyParser = require('busboy-body-parser')
app.use busboyBodyParser()

这个库似乎结合了 bodyparsers 正常表单解析和 busboys 处理多部分表单数据和文件的能力。

https://www.npmjs.com/package/busboy-body-parser

于 2015-08-14T05:22:17.837 回答