Jestem nowy w serwisie socket.io i uruchomiłem coś, co wydaje się dość dziwne. Tak naprawdę nie znam różnicy między socket.emit
i io.emit
, ale nie mogę znaleźć nigdzie wyjaśnienia.io.emit vs socket.emit
io.on('connection', function(socket){
io.emit('connected') // <<<<HERE>> socket.emit('connected');
socket.on('disconnect', function(){
io.emit('disconnect')
});
socket.on('chat message', function(msg){
io.emit('chat message', msg);
});
});
server.listen(3000);
To mój serwer rzeczy jednak przy zmianie io
do socket
że wiadomość zostanie wyświetlona tylko wtedy, gdy użytkownik, który łączy Łączy. io.emit
wysyła wiadomość do wszystkich użytkowników.
Może to powinno tak być, a może to tylko jakiś straszny hack? Daj mi znać, jeśli potrzebujesz kodu HTML po stronie klienta.
odpowiedź można znaleźć tutaj: http://stackoverflow.com/questions/10058226/send-response-to-all-clients-except-sender-socket-io Przepraszam za dupek. – Manu
Wygląda na to, że po podłączeniu urządzenia ioi tworzy gniazdo tylko dla bieżącego połączenia użytkowników. Wyobraź sobie, że to drzewo, w którym znajduje się u góry i rozgałęzia się na kilka gniazd. – kezi