1

ポート 3200 でサーバーに接続すると想定される非常に単純な Node.JS スクリプトを作成しました。コードは Windows 8.1 x64 でうまく動作しますが、Ubuntu サーバー マシンに移動すると、ECONNREFUSED が発生します。

IP アドレスとドメイン名で接続しようとしましたが、どちらも機能しません。それは常に私にECONNREFUSEDを与えます。

Ubuntu サーバーに SSH で接続すると、サーバー/ポートに telnet で接続でき、正常に動作します。サーバーへのpingも機能します。ただ Node.JS は接続しません。

サーバー: Ubuntu サーバー 12.04.3 LTS (正確)

コードは次のとおりです。

var net = require('net');

var socket = net.connect({port: 3200, host: '172.19.16.203'},  function() { 

    // Connection Successful
    console.log('Socket connected...');

    // Data Received from Server
    socket.on('data', function(d) {
        console.log('data');         
    });

    socket.on('end', function() {            
    });

    socket.on('error', function(e) {             
    });
});
4

1 に答える 1

1

解決策を見つけました。次のコマンドでスクリプトを実行していました。

ノード test.js

ノードは古いバージョンだと思います。OSを最新バージョンにアップグレードしてから、次のことを行いました。

apt-get インストール nodejs

次のようにスクリプトを実行します。

nodejs test.js

そしてそれはうまくいきます!

于 2013-10-31T19:39:17.297 に答える