我使用request在 Express 中实现以下对 CouchDB 的反向代理:
app.all(/^\/db(.*)$/, function(req, res){
var db_url = "http://localhost:5984/db" + req.params[0];
req.pipe(request({
uri: db_url,
method: req.method
})).pipe(res);
});
当发出 GET 请求时,它可以工作:请求从客户端到 node.js 到 CouchDB 并再次成功返回。POST 和 PUT 请求无限期挂起。日志语句一直运行到代理,但 CouchDB 不指示收到请求。为什么会发生这种情况,如何解决?