1

如何从我的 Flex 移动应用程序中访问 time.nist.gov 等互联网时间服务提供的时间?

有没有办法通过 URLRequest 或 HTTPService 做到这一点?

好的,这里是使用一个简单的 HTTPService 调用 Yahoo WebServices;

<s:HTTPService id="serverTime" url="http://developer.yahooapis.com/TimeService/V1/getTime?appid=myID" result="resultHandler(event)" resultFormat="e4x"/>

在我的 resultHandler 中,Timestamp 上的跟踪已经失败(不返回值);

private function resultHandler(event:ResultEvent):void {
            // this works (outputs the xml as shown on Yahoo
            trace(event.result);

            var xmlResult:XML = event.result as XML;
            var timestamp:String = xmlResult.Timestamp;

            trace("stamp" + timestamp);
}
4

1 回答 1

1

time.nist.gov(或任何其他时间服务器)使用 NTP 协议进行通信,而不是 HTTP,因此您不能使用 URLRequest 或 HTTPService。我不知道 ActionScript 中有任何 NTP 客户端实现。您可能需要自己做。

根据您的需要,您可以使用提供“相当准确”时间的网络服务,例如Yahoo WebServices。这通过 HTTP,因此您可以在 Flex 中使用 URLRequest 或 HTTPService。

于 2012-02-01T09:55:59.063 回答