Node.js Unixソケットが立ち上がっていません。 Node.jsコードは、サーバーとして動作するCアプリを生成します。 Node.jsコードからサーバーに接続しようとすると、サーバーが準備ができていない可能性があります。そのため、エラーが発生します。私はそれを素朴にキャッチしようとしますが、うまくいきません。ここでは、コードの簡易版です:サーバがまだ利用できないときにNode.js Unixソケットクライアントを作成する方法
var net = require('net');
const URI_SOCK = '/opt/tmp/.socket';
try {
const socket = net.connect(URI_SOCK, function() {
//'connect' listener
console.log('Connected to socket!');
socket.write("42");
});
} catch(err) {
console.log("Caught you!");
}
は、ここで私はそれを実行しようとすると何が起こるかです:
✘ ⚡ ⚙ [email protected] ~ node test.js
events.js:72
throw er; // Unhandled 'error' event
^
Error: connect ECONNREFUSED
at errnoException (net.js:901:11)
at Object.afterConnect [as oncomplete] (net.js:892:19)
そのエラーをキャッチするか、私はプログラムを強制することができるもの、そうする方法については任意のアイデアは、サーバーがクライアントを受信する準備が整うまで待機しますか?
あなたはループが(サーバーが何らかの理由で開始できませんでした場合は、あきらめる前に)しばらくの間接続しようとすることができます – Joe