2

こんにちは、これは socket.io のサーバー側のコードで、クライアント側でこの関数を呼び出す方法がわかりません。この関数を呼び出す方法に関するコードを教えてください:

io.sockets.on('connection', function (socket){

    sub.on('subscribe', function (channel) {
        pub.publish('Privatex','Test Message 1');
        pub.publish('Privatex','Test Message 2');
        pub.publish('Privatex','Test Message 3');
    });

    sub.on('message', function (channel, message) {
        console.log(channel + ':' + message);
            sub.unsubscribe();
            pub.end();
            sub.end();
    });

    sub.incr('Channel Test');
    sub.incr('Privatex');
});
4

1 に答える 1

2

最初に使用方法のセクションを参照してください。

クライアント側でこのコードを呼び出すには、socket.io がサーバー側で既に構成されていると仮定して、このコードを使用するだけです。

<script src="/socket.io/socket.io.js"></script>
<script>
  var socket = io.connect('http://localhost');//path to socket.io
</script>

しかし、何が起こっているのかを 2 分ほど見てみましょう。これは、connectionイベントのすぐ下にあるため、すべてのクライアント接続で呼び出されます。これを行うのが最善の方法ではない場合があり (クライアントが一時的に切断される可能性があるため)、クライアントからイベントを発行する方が適切です。

クライアントコード

<script src="/socket.io/socket.io.js"></script>
<script>
  var socket = io.connect('http://localhost');//path to socket.io
  socket.emit('my other event', { my: 'data' });
</script>

サーバーコード

io.sockets.on('connection', function (socket) {
  socket.on('my other event', function (data) {
   //do something here
  });
});
于 2013-09-11T08:21:23.240 に答える