私は奇妙な問題があります。単純なSocket.IOエコーサーバーをテストとして作成していますが、send()メソッドを動作させることはできません。私はこのコードの一部使用していますサーバーの場合:送信(「テスト」)Socket.IO send()が動作しない
var io = require('socket.io').listen(3000);
var clients = {};
io.sockets.on('connection', function (socket) {
socket.send('test');
socket.on('addclient', function(id) {
socket.id = id;
clients[id] = socket;
console.log('New client connected: '+ id);
});
socket.on('echomessage', function(message) {
console.log('Sending echo message to client '+ socket.id);
socket.send(message);
});
socket.on('disconnect', function() {
console.log('Client '+ socket.id + ' disconnected');
delete clients[socket.id];
});
});
を完璧に取り組んでいるが、私はechomessageイベントを発するとき、私は、メッセージは表示されません。サーバーまたはクライアント側のエラーメッセージは一切ありません。
ので、クライアント側に私はこれを実行します。
// Connect with the server (works, connection established)
// works too, I see it on the server
sock.emit('addclient', 1);
// I see 'Sending echo message to client 1' on the server
sock.emit('echomessage', 'Echo this please');
をしかし、私はまったくメッセージは表示されません。
私は何が間違っているのか全く分かりません。すべての助けに感謝します!
チェック。 –
クライアントのどのコードがサーバーのメッセージを処理するのですか? – supertopi
私はクライアント側でJava実装を使用しています。クライアントが接続されているのは、クライアントまたはサーバー側のどちらでも「接続終了」メッセージが表示されないためです。それはちょうどそのようだsocket.send(message); echomessageイベントが発生したときには動作しません。 – EsTeGe