繁体   English   中英

nodejs表达代理发布请求

[英]nodejs express proxy post request

我想代理发布请求,并且代理服务器的地址在发布参数中,我有以下代码:

app.use( bodyParser.json() );       // to support JSON-encoded bodies
app.use(bodyParser.urlencoded({     // to support URL-encoded bodies
      extended: true
}));
app.post('/proxy', function (req, res) {
    var proxyReq = request(req.body.url, function(err, res, body) {
        console.log(body);
    });
    proxyReq.on('response', function(proxyRes) {
        proxyRes.pipe(res);
    });
    req.pipe(proxyReq);
})

然后我使用启动服务器

NODE_DEBUG=request node app

我使用curl发送这样的请求:

curl -d 'url=http://www.google.com' http://localhost:3000/proxy

在服务器控制台中,我可以看到:

REQUEST { uri: 'http://www.google.com', callback: [Function] }
REQUEST make request http://www.google.com/

但是在客户端中,没有任何响应,只是挂在这里。 有谁知道为什么? 以及如何解决这个问题。 谢谢

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM