node.js - node socket出错,这是什么原因?另外我想设置连接超时,怎么写呢?
黄舟
黄舟 2017-04-17 14:51:56
0
1
644

黄舟
黄舟

人生最曼妙的风景,竟是内心的淡定与从容!

全員に返信(1)
大家讲道理

1.client.connectc2 番目のパラメータ 43 は何を意味しますか? ? ? ? client.connect は 2 つのパラメータのみを受け取ります (2 番目のパラメータはオプションです) socket.connect(options[, connectListener])

client.connect(server, function(){
  console.log('正常に接続されました');
})

2. server が渡す値を知りたいです。 { port: 8888, host: 'localhost' } または { path : '/xxx/tt.sock'}

3. タイムアウトを設定するには、タイムアウトを直接設定します。詳細については、以下のコードを参照してください。ただし、タイムアウトになった場合でも、timeout イベントのみが開始されることに注意してください。ソケット接続は閉じられないため、手動で閉じる必要があります (end() または destroy() を呼び出します)。

4. サーバー コードまたはクライアントによって呼び出されたコードが表示されませんでした。

バージョンの問題を考慮して、ES5 の記述メソッド
server.js

を使用しようとします。
var net = require('net')
var サーバー = net.createServer(関数(ソケット) {
  ソケット.end('さようなら\n')
}).on('エラー', function(err) {
  // ここでエラーを処理します
  スローエラー
});

// ローカルホスト:8888 でリッスンします。
サーバー.リッスン({
  ホスト: 'ローカルホスト'、
  ポート: 8888
}、 関数() {
  console.log('開いたサーバー名',server.address())
});

クライアント.js

var net = require('net')
var 出力 = ''
var client = 新しい net.Socket();
client.connect({
  ポート: 8888、
  ホスト: 'ローカルホスト'
}、 関数() {
  console.log('サーバーに正常に接続しました')
})

//タイムアウト方法を設定する
client.setTimeout(3000) // 3秒のタイムアウトを設定
client.on('タイムアウト', function() {
  console.log('クライアントのタイムアウト')
})

client.on('データ', 関数(データ) {
  出力 = data.toString()
  client.end();
})
いいねを押す +0
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート