Chintan,看看socket.io,因爲這將覆蓋你想要的一切
Socket.IO實現實時雙向的基於事件的通信。它適用於每個平臺,瀏覽器或設備,同時關注可靠性和速度。
服務器端
在您的node.js服務器,你會想建立一個'開'事件,引用連接。這連接事件是一個默認事件socket.io給我們,我們可以偵聽並在客戶端(套接字)連接時觸發。因此,在服務器,我們會碰到這樣的:
socket.on('connection', function() { console.log('Someone just joined'); });
因此,對於連接我們的服務器將輸出有人剛剛加入
對此進一步擴展,你可以添加一個EMIT事件,使每個插座:
socket.on('connection', function() { console.log('Someone just joined'); socket.emit('hello', { message: 'Hello' } });
所以,當客戶端連接這個你好事件將被髮射。我們可以聽出對客戶端上的這一事件,像這樣:
客戶端
socket.on('hello', function(data) { console.log(data.message); // Hello });
Socket.io是能夠將數據發送兩種方式(雙向)的,所以你也可以發出從客戶端事件和監聽服務器
你也說過你會所有客戶反應到一定的情況下,對於這個,而不是做一個socket.emit你會做的,而不是對io.emit。請記住,套接字只發送到該套接字。 Io發射到包括髮送者的所有套接字,並使用socket.broadcast.emit將發送給所有連接的客戶端,但不是發送者。
Check out socket.io ' website
是在_same_服務器(甚至_same_ VM)中的所有組件嗎? –
@rick James:是在同一臺服務器上的所有組件。 –