在请求中创建代理并在节点中表达

时间:2014-04-13 10:38:45

标签: node.js http proxy request

我正在尝试使用express和request模块创建代理。 This post显示了如何轻松pipe()对回复的请求:

app.use(express.json());       // to support JSON-encoded bodies
app.use(express.urlencoded()); // to support URL-encoded bodies
//app.use(express.multipart());

app.use('/api', function(req, res) {
  var url =proxyUrl + req.url;
  req.pipe(request(url)).pipe(res);
});

它适用于所有GET请求。但是在POST请求中它失败了。无法弄清楚发生了什么,因为它只会遇到超时。 POST请求适用于代理。

我做错了什么?我可以调试请求有任何更改吗?我尝试过以下操作,但文件为空:

req.pipe(fs.createWriteStream("test.txt"));

1 个答案:

答案 0 :(得分:0)

我们也遇到了同样的问题,因为express.json()。禁用json解析器后,它可以正常工作。但这不是空闲的解决方案,因为您可能需要json解析器。