node.js - Mac: 開いているWebSocketを確認する方法は?
私は、Tomcat クライアントが作成した WebSocket に接続しようとしています。私が見ているのは ws://localhost:8080/cs-webapp/ws ですが、それに接続しようとすると 302 エラーが発生します。ここでの他の質問や回答は該当しません :(
私は自分のマシンで開いているポートのリストを取得するために次のコマンドを使用しており、Tomcatに関連して見えるものは次の通りです:
sudo lsof -PiTCP -sTCP:LISTEN
java localhost:21179 (LISTEN)
java *:63862 (LISTEN)
java *:49190 (LISTEN)
java *:8080 (LISTEN)
java *:8009 (LISTEN)
java TCP localhost:8005 (LISTEN)
java TCP *:58083 (LISTEN)
上記の情報をもとに、どれがWebSocketのポートであるか、そしてどのように接続するかを判断する方法はありますか?
私が試したコードスニペットは次のとおりです:
#!/usr/bin/env node
var WebSocketClient = require('websocket').client;
var client = new WebSocketClient();
client.on('connectFailed', function(error) {
console.log('Connect Error: ' + error.toString());
});
client.on('connect', function(connection) {
console.log('WebSocket Client Connected');
connection.on('error', function(error) {
console.log("Connection Error: " + error.toString());
});
connection.on('close', function() {
console.log('echo-protocol Connection Closed');
});
connection.on('message', function(message) {
if (message.type === 'utf8') {
console.log("Received: '" + message.utf8Data + "'");
}
});
});
//client.connect('ws://localhost:8080/cs-webapp/ws', 'echo-protocol');
client.connect('ws://localhost:63862', 'echo-protocol');
//client.connect('ws://localhost:8080/cs-webapp/ws', 'echo-protocol');