59
49

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

Socket.io のよく使う関数とか

Last updated at Posted at 2019-08-08

#Socket.io
バージョン: 2.2.0
namespacesはデフォルト

##サーバ側
###送信

const io = require('socket.io')(http);

//全クライアントに送信
io.emit('event', param); 

//'room'ルーム内のクライアントに送信
io.to('room').emit('event', param); 

//特定クライアントに送信
io.to('socetID').emit('event', param);

//送信元以外の全クライアントに送信
io.broadcast.emit('event', param); 

###受信

//イベントハンドラを登録
io.on('event', () => {
});

//イベントハンドラを登録 一度のみ
io.once('event', () => {
});

/*connection(webSocket確立時)イベント時
クライアントが接続するたびにイベントハンドラを登録*/
io.on('connection', socket => {
    socket.on('event', () => {
    });
});

//最初のクライアント接続時のみ
io.once('connection', socket => {
    socket.on('event', () => {
    });
});

###クライアント情報取得

io.of('/').in('room').clients( error,clients => {
    //'room'ルームのクライアントのソケットIDリスト
    console.log(clients); 

    //'room'ルームのクライアントの数
    console.log(clients.length); 
}); 

###ルーム

io.on('connection', socket => {
    //'room'ルームに接続
    socket.join('room');

    //'room'ルームから切断
    socket.leave('room');
    });
});

##クライアント側
###送信

const io = io();

io.emit('event', param);

###受信

io.on('event', param => {
});

追記するかもしないかも

59
49
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
59
49

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?