【问题标题】:CountDown Timer in js sync with serverjs中的倒数计时器与服务器同步
【发布时间】:2018-05-23 13:18:16
【问题描述】:

我有一个拍卖平台,我想以秒为单位显示一个倒计时,服务器将返回拍卖结束日期。

当我 ping 服务器以获取拍卖结束时间时,此请求可能需要一些时间来处理,从而使倒计时计时器不可靠。

由于我无法在客户端时钟上中继,我怎样才能让它完美地工作?

【问题讨论】:

  • “我不能依赖客户端时钟” - 为什么不呢?如果你做不到,你就做不到。
  • @ASDFGerte 我不能依赖客户端时钟,因为客户端时钟可以快几分钟或慢几分钟?因为客户可能已经手动设置了时间。
  • 如果客户端手动设置时间,错误的计时器应该会导致用户的行为。我认为没有问题。
  • 是的,但我不想显示错误的倒数计时器,而且客户端时间可能由于许多原因而出错,他甚至可能自己都不知道,在这种情况下我不能显示错误的计时器。
  • 您可以将客户端时钟与服务器时钟同步,以防它有错误的时间(而不是更改客户端的系统时间),但是如果您不是不可能实现目标,那么您的目标将非常困难即使在很短的时间内,也不能依赖客户的时钟正常运行。如果您不关心微小的时差,您可以只发送剩余时间而不是拍卖结束,减去估计的最小网络延迟和计算时间,如果服务器没有,可能会在几分之一秒内准确不要滞后。

标签: javascript datetime


【解决方案1】:

每分钟获取服务器时间,获取剩余的小时和分钟,然后在客户端,倒计时每分钟剩余的秒数。

【讨论】:

    【解决方案2】:

    您可以只使用 websocket,它非常适合实时应用程序: https://www.html5rocks.com/en/tutorials/websockets/basics/

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2017-12-15
      • 1970-01-01
      • 2016-02-21
      • 2011-07-18
      • 1970-01-01
      • 2014-12-13
      • 1970-01-01
      • 2012-04-21
      相关资源
      最近更新 更多