在Express.js中使用multipart / form-data回答请求

时间:2015-12-27 18:06:27

标签: node.js express multipartform-data

我尝试与旧的PHP服务进行通信,该服务在multipart / form-data中使用json。服务器向我的express.js服务器发送一个POST请求,并提供一些数据,然后等我以同样的方式回答。

使用multer解析请求很容易。但是我无法以相同的格式发送回复,我尝试使用表单数据模块(https://www.npmjs.com/package/form-data),但我可以使用任何其他解决方案。我需要创建一个multipart / form-data响应并将其发送回服务器。

示例代码:

var express = require('express');
var multer  = require('multer');
var FormData = require('form-data');

var app = express();


app.post('/', multer().array(), function (req, res) {
  //Request is well handled and req.body contains fields from request
  //try to send response params in same multipart/form-data format.

  var form = new FormData();
  form.append('key', 'value');
  form.append('key2', 'value');
  res.set(form.getHeaders()); //Set content header
  res.set('content-length', ''+form.getLengthSync()); //Set length header
  form.pipe(res);  //Pipe form stream into response, response is send, but format is wrong.
});

有什么建议吗?我已经看到很多multipart / form-data请求解析的例子,但我需要以相同的格式将响应发送到服务器。

0 个答案:

没有答案