0

說,我們正在構建一個單頁論壇應用程序。許多用戶可以隨時發佈新帖子。 單個頁面應用程序如何知道服務器上的數據已更改(即已添加新帖子)。與單頁Web應用程序服務器的數據處理變化

它可以週期性地從服務器請求新數據,但是這是低效的,在火力地堡你同步的數據非常簡單,你只需要添加一個回調函數被調用時,數據的變化。

我不知道這是它通常是在單頁Web應用程序實現的(爲什麼不如果它不是)的方式。 This是我發現的唯一一個類似的庫。但是,這又不是我想要的。在這個例子中,服務器只是通知客戶端數據已經改變,但是客戶端不得不請求數據並等待響應......當數據發生變化時,這比僅接收JSON的效率低。

當有人回答了這個問題,我會看到答案馬上,無需刷新頁面。它是如何做到的,它是定期請求新數據,還是服務器只是在有新數據時發送新數據?還是隻是通知客戶端和客戶端而不是請求新數據?

回答

1

看看socket.io

Socket.IO支持實時雙向事件通信。 它適用於每個平臺,瀏覽器或設備,同時關注可靠性和速度。

在服務器上,您將設置套​​接字並使用socket.emit(eventName[, ...args][, ack])發出客戶端可以偵聽的事件。

在客戶端你會設置一個插座,使用socket.on(eventName, callback)更新與回調的客戶端應用程序。

相關問題