2011-12-22 103 views
0

我是NodeJS和Socket IO的新手,我使用PHP和jQuery。我希望能夠將我的社交網絡的許多不同元素與套接字io連接併發送數據等,但是我遇到了僅向某些用戶發送某些數據的問題,然後在此之上,某些種類的數據基於哪個頁面被加載。聽起來這將是一個很好的方式,讓這項工作附加不同的套接字IO事件或不需要特定的div,所以當這些div加載時,這些套接字正在完成,而沒有其他。然後我還需要一種跟蹤用戶發送數據的方式。Node.js + Socket IO當div加載/卸載時連接/斷開連接?

+1

這太普遍了一個問題。聽起來像你需要一個教程。一個同樣一般的答案是,只在你使用的頁面中設置你需要的事件(不要附加到UI元素上),並將關於你的套接字訂戶的額外信息存儲在內存中,並使用這些信息只發送一些消息給某些用戶。 – dqhendricks 2011-12-22 01:58:49

+0

我覺得你在找什麼已經在這裏覆蓋=>參考http://stackoverflow.com/questions/8460121/updating-server-side-rendering-client-side – 2011-12-26 02:36:53

回答

0

...我碰到的某些數據發送到特定的用戶只,然後在上面>>那的問題,某些類型的數據,在此基礎上加載頁面。

您應該嘗試使用socket.io房間。這是一個例子:

io.sockets.on('connection', function (socket) { 
    socket.join('justin bieber fans'); 
    socket.broadcast.to('justin bieber fans').emit('new fan'); 
    io.sockets.in('rammstein fans').emit('new non-fan'); 
}); 

你可以有很多不同類型的用戶和發送/接收取決於他們加入了房間數據。

然後我還需要一種跟蹤用戶發送數據的方法。

你可以使用redis來存儲那種信息,這是一個很好的方法來做到這一點。

+0

謝謝,這是有點幫助,但在相同時間不是真的。我的網站將會有很多元素,並且需要將數據推送到。之後我將不得不提出解決方案。 – 2011-12-28 02:42:21