Web Services 有没有时间服务器,提供一个API,我可以抓住当前东部时间?

mfpqipee  于 2022-11-15  发布在  其他
关注(0)|答案(3)|浏览(144)

好的,我们在我们的网站上有一个倒计时,我需要做一个API调用来获得当前的东部时间。我有这个link,这是我需要的时间。有没有任何方法或任何Web服务,我可以使用一个jquery获取请求,返回当前时间.....任何信息都可以帮助

332nm8kg

332nm8kg1#

http://worldclockapi.com/很有帮助。

试试这个:http://worldclockapi.com/api/json/est/now
您可能希望使用JSONP版本或某种CORS proxy

edqdpe6u

edqdpe6u2#

最简单的答案是从服务器获取当前时间,因为这样可以避免跨源问题。

  • 每个操作系统都有一个mechanism,它可以将本地时钟与更可靠的计时源(如NIST的原子钟)同步。如果还没有,请配置您的服务器,使其时钟与这些源之一同步。
  • 用您选择的语言编写一个脚本,以JSON对象的形式返回当前时间,这是一件相对简单的事情。确保脚本返回正确时区的时间,考虑到DST(夏令时)--无论ET是UTC-5还是UTC-4,都不是那么简单。许多框架会为您处理这一问题,但有些框架不会。

请记住,您仍然不能(也不能)保证秒分辨率的准确性。通过从服务器请求时间,您完全受网络条件的支配,而您无法从JavaScript测量网络条件。一个客户端可能在几十毫秒内收到 AJAX 时间请求,而其他具有低质量连接的客户端甚至可能需要几十 * 秒 *。
事实上,在很多情况下,使用客户端的时钟可能会 * 更可靠 *,因为它也会通过NTP同步到一个可靠的时间源。我相信Windows默认启用了NTP同步。最好的办法可能是发出一个 AJAX 请求,获取服务器的当前时间和日期,如果本地机器的时间在服务器时间的20秒以内,就使用本地时间。

yhqotfr8

yhqotfr83#

我使用http://www.timeapi.org/来获取当前时间。它可以返回各种格式的日期/时间,而且它免费且易于使用。显然,服务器时间很容易获取,但有时这不是一个选项,这就是为什么我在几个场合使用这个API。你可以使用他们网站上列出的纯JavaScript方法,但我选择了jQuery AJAX 调用:

$.ajax({
    type: "GET",
    url: 'http://www.timeapi.org/utc/now.json',
    dataType: "jsonp",
    context: this
}).done(function(data) {
    // do stuff
})
.fail(function(){
    throw new Error('timeAPI ajax called failed!');
});

相关问题