ホームページ  >  記事  >  ウェブフロントエンド  >  node.js はポート forwarding_node.js を実装します

node.js はポート forwarding_node.js を実装します

WBOY
WBOYオリジナル
2016-05-16 15:05:352046ブラウズ

この記事では、参考のために、node.js ポート転送の実装コードを共有します。具体的な内容は次のとおりです。

#!/sbin/node
 
var net = require('net');
 
function proxyPort(srcport,destServer,destport)
{
  var server = net.createServer(function(c) { //'connection' listener
 
    c.on('end', function() {
        console.log('src disconnected');
    });
 
    var client = net.connect({port: destport,host:destServer},function() { //'connect' listener
         console.log('ok....');
         c.on('data', function(data) {
             console.log(data.length);
           client.write(data);
         });
    });
 
    client.on('error', function(err) {
     console.log("dest=" + err);
     c.destroy();
    });
 
    c.on('error', function(err) {
     console.log("src" + err);
     client.destroy();
    });
 
    client.on('data', function(data) {
     c.write(data);
    });
 
    client.on('end', function() {
     console.log('dest disconnected ');
    });
 
  });
  server.listen(srcport, function() { //'listening' listener
   console.log('server bound' + srcport);
  });
}
 
var params = process.argv;
if(params.length != 5){
 console.log("node port.js srcport destserver destport "); 
 return;
}
 
proxyPort(params[2],params[3],params[4]);
 
console.log(process.argv);


以上がこの記事の全内容です。皆様の学習のお役に立てれば幸いです。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。