·您当前的位置:首页 > 技术教程 > AS2与AS3技术 >

[AS3]AS3.0如何获取所在服务器的时间(实例代码)

时间:2012-09-12 14:43dawdler.name
[AS3]AS3.0如何获取所在服务器的时间(实例代码)

 

  1. package {  
  2. import flash.events.Event;  
  3. import flash.events.EventDispatcher;  
  4. import flash.net.URLLoader;  
  5. import flash.net.URLRequest;  
  6. import flash.utils.getTimer;  
  7. import flash.display.MovieClip;  
  8. /**   
  9. * 获取并计算服务器当前时间工具   
  10. * */  
  11. public class ServerTimeUtil extends MovieClip {  
  12. // 连接服务器获取当前服务器时间的类   
  13. private var loader:URLLoader;  
  14. // 记录请求时返回的服务器时间   
  15. private var serverTime:Number=-1;  
  16. // 记录请求时当前flash player运行的时间   
  17. private var regTime:int;  
  18. private var startTime:int;  
  19. private var url:String="http://192.168.1.240:9080/GDMCDCWeb/demo/getBusiness.do?type=HTY";  
  20. private var endTime:int;  
  21. public function ServerTimeUtil() {  
  22. loader=new URLLoader();  
  23. loader.addEventListener(Event.COMPLETE,onComplete);  
  24. load(url);  
  25. }  
  26. /**   
  27. * 初始获取服务器时间   
  28. * @url 服务器端用于返回当前时间的url地址,请求该地址必须可以返回服务器时间   
  29. * */  
  30. public function load(url:String):void {  
  31. loader.load(new URLRequest(url));  
  32. startTime=getTimer();  
  33. }  
  34. private function onComplete(event:Event):void {// 记录请求完成时FlashPlayer时间   
  35. endTime=getTimer();  
  36. regTime=startTime + endTime / 2;  
  37.  
  38. var st:Number=Number(loader.data);  
  39. serverTime=st;  
  40. dispatchEvent(new Event(Event.COMPLETE));  
  41. }  
  42. /**   
  43. * 获取当前服务器时间   
  44. * @return 返回的数据为当前时间的Date对象,如果您需要一个Number对象,可以修改返回值   
  45. * */  
  46. public function getServerTime():Date {  
  47. if (serverTime < 0) {  
  48. // 服务器时间计算方式:当前服务器时间 = 当前FlashPlayer运行时间 - 请求时FlashPlayer运行时间 + 请求时服务器时间   
  49. var span:int=getTimer() - regTime;  
  50. var date:Date=new Date ;  
  51. date.setTime(serverTime + span);  
  52. trace(date);  
  53. return date;  
  54. }  
  55. throw new Error("尚未获取到服务器时间");  
  56. }  
  57. }  
  58. }  

 

热门文章推荐

请稍候...

保利威视云平台-轻松实现点播直播视频应用

酷播云数据统计分析跨平台播放器