2012-02-28 61 views
4

我需要使用JSON获取当前时间(来自可信来源)。精确的时间对于我的应用程序来说是至关重要的,所以我不能依赖设备的时间,即使只有一秒钟或两秒钟的时间。有谁知道一个好的JSON时间服务器?

编辑:我不是担心'精确',而只是让运行应用程序的几个设备有相同的时间。

+1

如果您在JSON中需要它,这意味着您的应用程序正在浏览器中运行,在这种情况下,如果您可以在一秒钟或两秒钟内实现时间精度,考虑到所有异步事件,我会感到惊讶。或者你需要JSON,因为我失踪的另一个原因? – antlersoft 2012-02-28 17:02:19

+4

无论如何,精度将是一个问题。一个孤立的请求,没有ping时间等,不能考虑延迟。 – cHao 2012-02-28 17:04:37

+0

这是一个phonegap android应用程序。所以一切都编译成.apk文件。所以它不是一个真正的Web应用程序。但我基本上需要从中央服务器获取时间,并将其与设备时间进行比较 - 以便我可以通过了解它们与集中式时间的时差来同步来自多个设备的结果。 – antonpug 2012-02-28 17:06:03

回答

2
function getTime(zone, success) { 
    var url = 'http://json-time.appspot.com/time.json?tz=' + zone, 
     ud = 'json' + (+new Date()); 
    window[ud]= function(o){ 
     success && success(new Date(o.datetime)); 
    }; 
    document.getElementsByTagName('head')[0].appendChild((function(){ 
     var s = document.createElement('script'); 
     s.type = 'text/javascript'; 
     s.src = url + '&callback=' + ud; 
     return s; 
    })()); 
} 

getTime('GMT', function(time){ 
    // This is where you do whatever you want with the time: 
    alert(time); 
}); 

from here

+1

现在服务器已经超过了它的配额,所以如果它是关键任务的话,我不会仅仅依靠这个服务器。还有其他类似的服务器吗? – Patrick 2013-01-15 00:57:14

+1

这一个http://date.jsontest.com/和http://time.jsontest.com/,但不是我对他们的时间不够舒服。 – 2014-02-27 13:21:43

1

由于2015年9月12日http://www.timeapi.org/utc/now.json的似乎是工作。

{"dateString":"2015-09-12T23:15:56+01:00"} 

更多的信息在这里http://www.timeapi.org。它托管在Heroku和source is on Github上。

+0

www.timeapi.org在本帖子发布时似乎已被美国东部时间下跌。现在请求获取[EST](http://www.timeapi.org/est/now.json)给了我'''dateString“:”2016-03-28T20:25:21-05:00“} '。请求[EDT](http://www.timeapi.org/edt/now.json)给了我'''dateString“:”2016-03-28T22:27:57-03:00“}'并作为参考,对[UTC](http://www.timeapi.org/utc/now.json)的请求表示“{”dateString“:”2016-03-29T01:28:34 + 00:00“} '。我现在在密歇根州,现在应该是美国东部时间,我在这里查询的时间是21:27,这是UTC-4。 – skelliam 2016-03-29 01:36:46

相关问题