我正在尝试使用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"));
答案 0 :(得分:0)
我们也遇到了同样的问题,因为express.json()。禁用json解析器后,它可以正常工作。但这不是空闲的解决方案,因为您可能需要json解析器。