栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

获取当前的GMT世界时间

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

获取当前的GMT世界时间

首先,要获得准确的GMT时间,您需要一个值得信赖的来源。这意味着某个服务器在某处。Javascript通常只能进行HTTP调用,并且只能对托管有问题的页面的服务器进行调用(相同的源策略)。因此,该服务器必须是GMT时间的来源。

我将您的Web服务器配置为使用NTP与GMT同步其时钟,并通过向页面写入变量来使Web服务器告诉脚本现在几点。否则,当您需要了解时间时,将make和XmlHttpRequest返回到服务器。缺点是,由于涉及到的延迟,这将是不准确的:服务器确定时间,将其写入响应,响应通过网络传输,并且只要客户端的cpu给它一个时间片,就执行javascript,等等。如果页面很大,慢速链接可能会延迟几秒钟。您可以通过确定用户时钟与GMT的距离来节省一些时间,并通过该偏移量调整所有时间计算。当然,如果用户

还请记住,客户端可以更改数据,所以不要相信他们发送给您的任何时间戳。

编辑 : 非常简单易用:使用Javascript添加

<script>
调用url
的元素,这比自己动手做起来容易,因为json-time.appspot.com服务器用作GMT时间的来源,并以允许您解决同源策略的方式提供此数据。对于简单的网站,我建议您这样做。但是,它有一个主要缺点:json-time.appspot.com网站可以在用户页面上执行任意代码。这意味着,如果该站点的运营商想要分析您的用户或劫持他们的数据,他们可以轻松地做到这一点。即使您信任操作员,也需要相信他们没有被黑客入侵或受到破坏。对于商务站点或任何具有高度可靠性问题的站点,我建议您自己托管时间解决方案。

编辑2 : 这意味着,如果需要可靠性,则应自己托管时间服务器。但是,在服务器上添加以相同数据格式响应的页面应该足够容易。基本上,您的服务器接受一个查询,例如

http://json-time.appspot.com/time.json?tz=America/Chicago&callback=foo

并返回一个字符串,例如

foo({ "tz": "America/Chicago",  "hour": 15,  "datetime": "Thu, 09 Apr 2009 15:07:01 -0500",  "second": 1,  "error": false,  "minute": 7})

请注意,

foo()
其中包装了JSON对象;这对应于查询中的callback=foo。这意味着当脚本加载到页面中时,它将调用您的foo函数,该函数可以随时随地执行任何操作。此示例的服务器端编程是一个单独的问题。



转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/575296.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号