2016-10-13 00:16:48 点击量:38 标签: 收藏本文
- package {
- import flash.events.Event;
- import flash.events.EventDispatcher;
- import flash.net.URLLoader;
- import flash.net.URLRequest;
- import flash.utils.getTimer;
- import flash.display.MovieClip;
- /**
- * 获取并计算服务器当前时间工具
- * */
- public class ServerTimeUtil extends MovieClip {
- // 连接服务器获取当前服务器时间的类
- private var loader:URLLoader;
- // 记录请求时返回的服务器时间
- private var serverTime:Number=-1;
- // 记录请求时当前flash player运行的时间
- private var regTime:int;
- private var startTime:int;
- private var url:String="http://192.168.1.240:9080/GDMCDCWeb/demo/getBusiness.do?type=HTY";
- private var endTime:int;
- public function ServerTimeUtil() {
- loader=new URLLoader();
- loader.addEventListener(Event.COMPLETE,onComplete);
- load(url);
- }
- /**
- * 初始获取服务器时间
- * @url 服务器端用于返回当前时间的url地址,请求该地址必须可以返回服务器时间
- * */
- public function load(url:String):void {
- loader.load(new URLRequest(url));
- startTime=getTimer();
- }
- private function onComplete(event:Event):void {// 记录请求完成时FlashPlayer时间
- endTime=getTimer();
- regTime=startTime + endTime / 2;
- var st:Number=Number(loader.data);
- serverTime=st;
- dispatchEvent(new Event(Event.COMPLETE));
- }
- /**
- * 获取当前服务器时间
- * @return 返回的数据为当前时间的Date对象,如果您需要一个Number对象,可以修改返回值
- * */
- public function getServerTime():Date {
- if (serverTime < 0) {
- // 服务器时间计算方式:当前服务器时间 = 当前FlashPlayer运行时间 - 请求时FlashPlayer运行时间 + 请求时服务器时间
- var span:int=getTimer() - regTime;
- var date:Date=new Date ;
- date.setTime(serverTime + span);
- trace(date);
- return date;
- }
- throw new Error("尚未获取到服务器时间");
- }
- }
- }
我们是一家提供综合软件外包与弱电工程服务的技术公司。
业务涵盖定制软件、管理系统、网站、小程序、APP、系统集成、网络布线、监控安防、门禁、机房建设及长期技术维护。
公司地址:湖北省宜昌市伍家岗区东站二路6号三峡(宜昌)大数据产业园海洋馆二楼A203室