我需要使用JSON获取当前时间(来自可靠的来源)。精确的时间对我的应用程序来说是关键任务所以我不能依赖设备的时间,即使它只是一两秒钟。
编辑:我并不像'精确'那样担心,只是为了让运行应用程序的多个设备具有相同的时间。答案 0 :(得分: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);
});
答案 1 :(得分: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上。
答案 2 :(得分:1)
截至2020年1月7日,http://worldtimeapi.org/工作正常。我们可以轻松地以json格式或纯文本格式获取特定时区或ip地址的当前日期和时间详细信息。
http://worldtimeapi.org/api/timezone/America/Santiago
上述url将为您提供json中“美国/圣地亚哥”的当前日期和时间的详细信息。
http://worldtimeapi.org/api/timezone/Asia/Kolkata
以上网址将为您提供json中“亚洲/加尔各答”的当前日期和时间的详细信息。
根据您的公共IP(作为JSON)请求当前时间:
$ curl“ http://worldtimeapi.org/api/ip”
注意:默认情况下,API返回JSON。在任何API URL中添加后缀.txt都将返回纯文本响应,这在某些系统上可能更易于解析。