Javascript/nodejs/socket.io/実用サンプル
ナビゲーションに移動
検索に移動
サーバ側
- app.js
var port = 8001;
var socketio = require('socket.io').listen(port);
// 接続受信
socketio.on('connection', function (client) {
console.log("self.sid=" + client.id);
// 全ユーザーに接続情報送信
client.broadcast.emit("connection_other", {sid: client.id});
// 切断時
client.on('disconnect', function() {
// 全ユーザーに切断情報送信
client.broadcast.emit("disconnect_other", {sid: client.id});
});
// message受信
client.on('message', function(data) {
console.log(data);
// 全ユーザに送信
client.broadcast.emit('message', data);
});
});
console.log("port:" + port);
require.jsを使ったクライアントサンプル
- main.js
require(['https://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js', 'socket.io'], function() { var socketio = io.connect('http://localhost:8001'); // 自分接続受信 socketio.on('connect', function() { console.log("sid:" + socketio.socket.sessionid); // 入室メッセージ送信 socketio.emit('message', socketio.socket.sessionid + ' join'); }); // 別ユーザの接続情報受信 socketio.on('connection_other', function(user) { console.log('connection_other:user.sid=' + user.sid); }); // 別ユーザの切断情報受信 socketio.on('disconnect_other', function(user) { console.log('disconnect_other:user.sid=' + user.sid); }); // メッセージ受信 socketio.on('message', function(str) { console.log(str); }); });