0

私は NodeJS に慣れてきたばかりなので、これは非常に基本的な質問です。優しくしてください! IP アドレスがローカル ネットワークからのものでない場合、接続を拒否しようとしています。c.close とコンソール ログを検出して実行しますが、telnet からデータを受信します。私はc.closeとc.destroyを試しました。

オブジェクト「c」を正しく使用していますか? 私はそれが connectionListener ソケットであることを知っており、c.remoteAddress は接続ホストの正しい IP アドレスを返します!

('172.246.2' は、条件付きチェックを失敗させてソケットを閉じるために意図的に間違っていることに注意してください)

var server = net.createServer(function(c) {
      if (c.remoteAddress.substr(0, 8) !== "172.246.2") {
        c.close;
        console.log('Socket destroyed');
        }
      c.on('data', function(data) {
        incomingData(data);
      });
      c.on('error', function(error) {
        console.log('Error: ' + error);
      });
    });

ソケットの機能に関する基本的な質問がたくさんあることを感謝しますが、答えを見つけるのに十分な質問に近いものを見つけることができませんでした!

事前に乾杯、マーティン

4

1 に答える 1

0

c.destroy()の代わりに呼び出しますc.close

closeは呼び出すことができる関数ではありませんが、サブスクライブできるイベントです。

于 2013-06-04T12:18:07.100 に答える