我剛剛開始使用socket.io,並且我希望有一些函數能夠從客戶端通過服務器向所有客戶端廣播某些思想。來自客戶端的socket.io廣播
例如,我會有遊戲,當我需要處理很多事情。
有兩個選項: 1. 服務器端和客戶端的每個調用句柄,對於每個調用create socket.on('call');
但我認爲有更好的解決方案 2. 當客戶端調用發出時,我得到的有效載荷和套接字名稱將從服務器調用到其他客戶端。
像這樣: 服務器
// Broadcast specific emit to all clisnts expect sender
socket.on('broadcast', function(data){
socket.broadcast.emit(data.emitName, {id: socket.id, payload: data.payload});
});
和客戶端:
// Call to server
socket.emit('broadcast', {emitName: 'playerMove', payload: {....}});
// Handle called from server
socket.on('playerMove', function(data){
....
});
第二解決方案可以節省大量的時間,但它是安全的解決方案? 有沒有更好的解決方案如何從客戶端廣播通過服務器和呼叫到其他客戶端?
感謝您的回覆,所以當我使用一些身份驗證檢查套接字IDS然後將這個解決方案安全嗎? – Hadik