【问题标题】:How can I query online time servers to get the accurate time如何查询在线时间服务器以获取准确时间
【发布时间】:2014-03-20 02:32:48
【问题描述】:

我发现某些在线时间服务器在提供适当时区的情况下共享准确时间。例如:

  • time.windows.com
  • time.nist.gov
  • time-nw.nist.gov
  • time-a.nist.gov
  • time-b.nist.gov

是一些时间服务器,Windows 使用这些时间服务器通过 Internet 自动更新时间。我想使用这些服务器来确定准确的时间,而不是local server 时间或client system 时间。我尝试查询为:http://time.windows.com/?timezone=GMT+5:30(获取请求)期望获得印度的当前时间,但它说:Error : 403

所以,我想知道,查询此类时间服务器以获取响应的时间和日期的正确格式是什么。使用任何html (get)(post), php, js, jquery 的代码都是可以接受的。

谢谢!

【问题讨论】:

标签: javascript php jquery html lamp


【解决方案1】:

您不应该在您的应用程序代码中执行此操作。正如您所指出的,“Windows 使用某些时间服务器通过 Internet 自动更新时间”。因此,请使用适当的客户端程序/服务来定期设置服务器的时间。这样,您的服务器时钟将始终精确到微秒级。尝试基于每个请求(如您的描述所暗示的那样)查询时间服务器是愚蠢的,并且会导致大量不必要的开销。

【讨论】:

  • 我明白……但是如果我们真的需要准确性保证怎么办????我们知道本地系统时间容易受到攻击!!!可能是恶意软件等,会扰乱系统时间,客户端时间不可靠,因此我们需要第三方进行交叉检查。
  • 这就是为什么我建议在您的网络服务器上使用 NIST(或其他)客户端服务。然后,您可以从服务器的时钟中采样(例如传入请求的时间)。或者你的意思是你担心你的服务器时间会被黑客入侵,在这种情况下你想要另一种方式来获取时间?即使它被“黑客入侵”,这些服务的工作方式是您的服务器时间将从 Internet 原子钟每半小时同步一次(您可以配置频率)。没有真正的风险。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2018-07-12
  • 2012-05-09
  • 1970-01-01
  • 2011-10-21
  • 2011-05-25
  • 1970-01-01
相关资源
最近更新 更多