1
在我的網站我有所有在線用戶的列表,通過Node.js的實時更新之間的連接(我使用now.js)Node.js加載如何讓頁面載入
的問題是,當用戶瀏覽我的網站時,他們當然會在新頁面加載時斷開幾秒鐘。這意味着它們會從所有其他客戶端的列表中消失,並在幾秒鐘後重新出現。
有什麼辦法可以設置斷開連接功能的超時時間,例如:如果用戶在30秒內未重新連接,請從列表中刪除,否則不要?
或者如果有更好的方法來實現這個目標?可有人請點我在正確的方向:)
編輯:
想出了一個可行的解決方案,如果有人想知道。在服務器端我有這個功能
nowjs.on('disconnect', function() {
everyone.now.clientDisconnected();
});
其中只要用戶斷開連接客戶端上的調用此函數
now.clientDisconnected = function() {
setTimeout(function() { now.serverUpdateUsers(); }, 20000);
}
因此,而不是更新的用戶馬上,我們等待20秒。屆時用戶應完成加載新頁面,並且所有其他客戶端都不會顯示任何差異。
serverUpdateUsers();
是收集所有用戶數據並將其推送給所有客戶端的服務器功能。
是的,也許是個好主意。但我真的不知道他們是如何相互作用的。上面提出了一個簡單的解決方案...也許不是最佳的,但它的工作原理 – hampusohlsson