假设您有网络A,它允许连接到网络B但不能反向连接。是否可以建立从A到B的连接,以便在B中运行的代理现在可以监听并将B内的连接提供给A?
示例:网络A中端口8080上的HTTP Server A1是"不可见"但是,网络A中的特殊客户端PA连接到网络B中的代理PB并保持连接打开,以便代理PB现在可以在端口8080上侦听并将请求转发到原始HTTP服务器A1。
理想情况下,2个nodeJS脚本可以实现功能PA和PB。
答案 0 :(得分:0)
不确定。使用http-proxy
模块:
var http = require('http'),
httpProxy = require('http-proxy');
//
// Create your proxy server and set the target in the options.
//
httpProxy.createProxyServer({target:'http://PB:8080'}).listen(8080); // See (†)
//
// Create your target server
//
http.createServer(function (req, res) {
res.writeHead(200, { 'Content-Type': 'text/plain' });
res.write('why hello there PA' + '\n' + JSON.stringify(req.headers, true, 2));
res.end();
}).listen(8080);
https://github.com/nodejitsu/node-http-proxy#setup-a-basic-stand-alone-proxy-server
从那里开始,这是一个“代理开始”的问题,以获得你想要的结果(我有点困难时间跟踪它)。