2017-05-04 4 views
0

の番組はありません。ソケットioは、私は特定の部屋にいくつかの情報を放送しようとしている特定の部屋に

サーバ側

var io = require('socket.io')(server, { path: '/my/path' }); 
server.listen(8090, function() { 
    console.log("Server ON."); 
}); 

io.on('connection', function(socket){ 
    socket.on('room', function(room) { //set the room 
     socket.join(room); 
     socket.room = room; 
    }); 
    socket.on('new message', function (data) { //receive and broadcast the msg 
     socket.broadcast.to(socket.room).emit('new message', data); 
    }); 
}); 

クライアント側

//initial client config 
var socket = io(URL_SOCKET, {path: '/my/path'}); 
socket.emit('room', room_id); 
socket.on('new message', function (data) { 
    do_something(data); 
}); 

function on_change(data){ 
    socket.emit('new message', data); 
} 

ここに問題があります:socket.broadcast.toはブロードキャストですクライアントから(on_changeを呼び出して)すべての部屋(誰にでも)に送信された情報私は間違って何をしていますか?

+0

ハバhttps://github.com/socketio/socket.io/blob/master/docs/emit.mdを見てください。あなたは 'socket.to(socket.room).emit'や' io.to(socket.room).emit' – mk12ok

答えて

0

ただ、先端、私もそれを使用する、browser syncsocket.ioを使用していた、と私は紛争を得ていました。ソケットアプリケーションをテストする前にゴーストモードをオフにしてください。

関連する問題