2017-02-08 52 views
0

我正在開發一個選擇用戶的應用程序,並且其具有15秒的時間。定時器爲該用戶做出響應。用戶應用程序每5秒查詢一次數據庫以查看是否選擇了該用戶。如果是這樣的移動應用程序開始15秒。計時器。問題是定時器永遠不會匹配,因爲用戶應用程序可以在不同的計時器週期上與後端不同,並且可以在以後查詢數據庫。我使用Angular,NodeJS和expressJS + MongoDB來開發這個應用程序。如何將後端計時器與移動應用程序同步

有關如何讓定時器同步的任何建議?

回答

0

您需要創建用於請求當前服務器時間的API,並將該服務器時間用作計時器的基礎。

當瀏覽器暫停JavaScript執行時,您還需要考慮條件。移動設備也是如此。當移動設備暫停/休眠時,瀏覽器停止執行JavaScript,導致定時器不再同步。

每次打勾,檢查最後滴答毫秒與當前滴答毫秒。如果差值大於某個閾值,則假定定時器不再同步,並且需要通過請求當前服務器時間和重新計算定時器值來同步。

+0

我忘記提及的事情是後端的定時器可以隨時啓動。我的意思是,定時器只有在滿足特定條件時纔會熄滅,因此它可以在任何時候關閉,並在條件滿足時停止。所以抓住當前的服務器時間不會讓我知道後端計時器當前在哪裏 –

相關問題