`

as3 跨域

 
阅读更多
package com.yumei.layout
{
	import com.greensock.events.LoaderEvent;
	import com.greensock.loading.ImageLoader;
	import com.greensock.loading.LoaderMax;
	import com.greensock.loading.MP3Loader;
	import com.greensock.loading.SWFLoader;
	import com.yumei.config.Config;
	import com.yumei.data.Mission;
	import com.yumei.event.ActionEvent;
	
	import flash.display.DisplayObject;
	import flash.display.Loader;
	import flash.display.LoaderInfo;
	import flash.display.MovieClip;
	import flash.display.Sprite;
	import flash.events.Event;
	import flash.events.ProgressEvent;
	import flash.net.URLLoader;
	import flash.net.URLLoaderDataFormat;
	import flash.net.URLRequest;
	import flash.system.ApplicationDomain;
	import flash.system.LoaderContext;
	import flash.system.Security;
	import flash.system.SecurityDomain;
	import flash.utils.getDefinitionByName;
	import flash.utils.getQualifiedClassName;
	import flash.utils.setTimeout;
	
	import org.aswing.ASColor;
	import org.aswing.ASFont;
	import org.aswing.EmptyLayout;
	import org.aswing.JLabel;
	import org.aswing.JPanel;
	import org.aswing.JProgressBar;
	import org.aswing.JWindow;
	import org.aswing.LayoutManager;
	import org.aswing.util.HashMap;
	
	public class LoadPanel extends JPanel
	{
		
		private var total:JLabel;
		private var startpanel:StartPanel;//开始界面
		private var preimages:HashMap=new HashMap();
		private var urlloader:Loader;
		private var resloader:Loader;
		private var testUrlLoader:URLLoader;
		public function LoadPanel()
		{
			
			setLayout(new EmptyLayout());
			setName("loadPanel");
			setSizeWH(Config.SWF_WIDTH,Config.SWF_HEIGHT);
			setLocationXY(0,0);
			Security.allowDomain("*");
			Security.allowInsecureDomain("*");
			flash.system.Security.loadPolicyFile("http://192.168.1.40:8080/crossdomain.xml");
			urlloader=new Loader();
			urlloader.load(new URLRequest("res/load.swf"));
			urlloader.contentLoaderInfo.addEventListener(Event.COMPLETE,over);				
			resloader=new Loader();
			resloader.contentLoaderInfo.addEventListener(ProgressEvent.PROGRESS,queueProgressHandler)
			resloader.contentLoaderInfo.addEventListener(Event.COMPLETE,imageCompleteHandler)
//			http://192.168.1.40:8080/MyDDing/fx/
//			var loadercontext:LoaderContext=new LoaderContext(true,ApplicationDomain.currentDomain);	
//			resloader.load(new URLRequest("http://192.168.1.40:8080/.../fx/zxyj5.swf"),loadercontext);
			testUrlLoader=new URLLoader();
			testUrlLoader.dataFormat=URLLoaderDataFormat.BINARY;
			testUrlLoader.addEventListener(Event.COMPLETE,testurlloaderok);
			testUrlLoader.load(new URLRequest("http://192.168.1.40:8080/..../fx/zxyj5.swf"));
			total=new JLabel();
			total.setSizeWH(500,30);
			total.setForeground(ASColor.BLACK);
			total.setLocationXY(200,450);
			this.append(total);
			this.setChildIndex(total,numChildren-1);
			//this.setChildIndex(total,numChildren-1);
		}
		public function testurlloaderok(ev:Event):void{
			var loader:Loader=new Loader();
			loader.contentLoaderInfo.addEventListener(Event.COMPLETE,test2);
			loader.loadBytes(testUrlLoader.data,new LoaderContext(false,ApplicationDomain.currentDomain));
	      
		}
		public function test2(ev:Event):void{
		
		    var mv:MovieClip=ev.target.content as MovieClip;
			trace(getQualifiedClassName(mv.getChildByName("sp7")));
		}
		public function over(ev:Event):void{
			var dis:DisplayObject=ev.target.content;
			this.addChild(dis);
			urlloader.contentLoaderInfo.removeEventListener(Event.COMPLETE,over);				
			
		}
		private function queueProgressHandler(event:ProgressEvent):void
		{
			var fo:ASFont=new ASFont("宋体",24);
			total.setFont(fo);
			total.setText(""+Math.round((event.bytesLoaded/event.bytesTotal)*100) + "%");
		
			//total.setText(""+event.target.progress);
			if(event.bytesLoaded==event.bytesTotal)
			{
				resloader.removeEventListener(ProgressEvent.PROGRESS,queueProgressHandler);
				
				
			}
		}
		private function imageCompleteHandler(ev:Event):void
		{
//					var myev:ActionEvent=new ActionEvent(ActionEvent.LOAD_COMPLETE);
//						myev.panel=new StartPanel();
//						ActionEvent.YUMEIEvent.dispatchEvent(myev);
		var mv:MovieClip=ev.target.content as MovieClip;
		Mission.source=mv;
		for(var i:Number=0;i<mv.numChildren-1;i++)
		{
		trace(mv.getChildAt(i)+"---"+mv.getChildIndex(mv.getChildAt(i))+"---"+mv.getChildAt(i).name);
		}
//		trace(mv.getChildByName("educationmodelbutton"));
	     var sp:Sprite=Mission.source.getChildByName("educationmodelbutton") as Sprite;
		 sp.x=200,sp.y=200,sp.width=100;sp.height=50;
		 this.addChild(sp);
//		 trace("----"+ApplicationDomain.currentDomain.getDefinition("educationmodelbutton"));
		 trace("----"+getDefinitionByName("main"));
			
			
		}

	}
}

 

分享到:
评论

相关推荐

    as3.0跨域源码

    as3.0跨域源码,需要结合服务器一起实现

    MP3跨域音频频谱AS3播放器

    【MP3跨域音频频谱AS3播放器】是一种基于Adobe Flash ActionScript 3(AS3)技术开发的多媒体播放器,专为处理跨域音频频谱显示而设计。ActionScript是Flash平台上的编程语言,它允许开发者创建交互式、动画化的Web...

    as3corelib.swc及解析json的例子

    在本文中,我们将深入探讨如何在Flex 4.5中使用as3corelib库来解析JSON数据。as3corelib是一个强大的ActionScript 3库,它包含了一系列实用工具类,其中一个重要的功能就是处理JSON(JavaScript Object Notation)...

    跨域实现用户鉴权

    5. **后端代理(Backend-as-a-Proxy)**:前端发送请求到后端服务器,后端服务器再转发到目标API,从而绕过浏览器的同源策略。 在Tomcat这样的应用服务器中,配置跨域支持通常需要修改web.xml文件,添加过滤器来...

    Flask配置Cors跨域的实现

    1 跨域的理解 跨域是指:浏览器A从服务器B获取...同源是指:同一个请求协议(如:Http或Https)、同一个Ip、同一个端口,3个全部相同,即为同源。 2 跨域的处理 跨域的这种需求还是有的,因此,W3C组织制定了一个Cross-

    as3json资源

    - 对于跨域问题,服务器端需要设置正确的CORS策略,以便AS3可以安全地从其他域获取JSON数据。 综上所述,这个"as3json资源"提供了AS3与JSON交互的实践案例,对学习和掌握AS3中JSON的使用具有很高的价值。通过深入...

    cors跨域Tomcat文件

    【描述】"http://blog.csdn.net/itas109/article/details/70285802"这篇博客文章详细介绍了如何在Tomcat服务器上设置CORS,以允许跨域请求。这通常对于前后端分离的Web应用或API服务来说非常重要,因为它们可能运行...

    as3corelib-.92.1.zip_flex

    4. **JSONP 支持**:JSONP 是一种跨域数据交换的解决方案,AS3CoreLib 的 JSON 类提供了对 JSONP 请求的处理,使得在 Flash 内容中可以轻松获取跨域数据。 在 Flex 应用开发中,AS3CoreLib 的 JSON 类被广泛用于与...

    renlianshibie.rar_FlashAS3人脸识别_as3_as3 人脸_flash as3_flash人脸

    标题中的“renlianshibie.rar_FlashAS3人脸识别_as3_as3 人脸_flash as3_flash人脸”揭示了我们讨论的主题是关于使用Flash AS3实现的人脸识别技术。这一技术结合了ActionScript 3(AS3)编程语言与OpenCV库中的Haar...

    .net WebUploadTest实现跨域浏览

    3. **客户端JavaScript实现**: - 使用jQuery的`$.ajax`或者fetch API创建一个跨域POST请求,设置`xhrFields`的`withCredentials`属性为true,以便发送cookies进行身份验证: ```javascript $.ajax({ url: '...

    纯as3链接本地数据库

    此外,由于AS3与MySQL通信时需要通过HTTP或HTTPS,可能涉及跨域问题。因此,需要在MySQL服务器上配置相应的CORS策略,允许AS3请求访问。 标签"as3 mysql"表明我们将使用AS3与MySQL数据库进行集成。尽管AS3原生并不...

    as3视频播放 flash实例 下载 源码

    AS3(ActionScript 3)是Adobe Flash Platform中用于创建互动内容、动画和应用程序的主要编程语言。这个"as3视频播放 flash实例 下载 源码"是一个学习资源,提供了AS3实现视频播放功能的源代码,对于想要深入理解AS3...

    AS3与JS通信

    AS3(ActionScript 3)和JavaScript之间的通信是Web开发中的一个重要话题,特别是在构建富互联网应用程序(RIA)时。ActionScript 3是Adobe Flash Player和Adobe AIR中的编程语言,而JavaScript则是网页开发的标准...

    vue 跨域配置解决方案

    // In our experience, they generally work as expected, // just be aware of this issue when enabling this option. cssSourceMap: false } 将target设置为我们需要访问的域名。 3、然后在main.js中设置全局...

    MP3播放器用as实现

    总结来说,实现“MP3播放器用AS实现”需要掌握AS3中的Sound类和SoundChannel类,理解Flash的安全策略,处理跨域问题,以及考虑如何优化用户体验和处理可能出现的错误。在实际项目中,还要关注文件组织结构,确保代码...

    BGP MPLS配置OptionC方式跨域VNP示例(方案二).zip

    Option C是BGP/MPLS IP VPN标准中定义的一种跨域解决方案,其核心思想是在AS(Autonomous System,自治系统)间使用EBGP(External BGP)来交换路由信息,并通过MP-BGP(Multiprotocol BGP)在每个AS内部传递标签...

    uploadify+ashx 跨域上传

    postedFile.SaveAs(savePath); } } } ``` 这段代码会遍历所有上传的文件,将它们保存到服务器的`uploads`目录下。当然,实际项目中还需要考虑错误处理、权限验证和文件类型检查等安全措施。 在客户端,我们需要...

    AS3 中使用 URLRequest 和 URLLoader 与服务器交互

    在Adobe Flash Professional CS5或更新版本的环境中,ActionScript 3(AS3)提供了一套强大的网络通信工具,包括`URLRequest`、`URLLoader`等类,这些类替代了早期版本中的`LoadVars`方法,使得与服务器的交互更加...

    AS3与C#交互,有返回值

    - 确保AS3与C#之间的通信通道畅通无阻,尤其是跨域策略的正确配置。 - 在C#端处理来自AS3的请求时,需要注意XML格式的数据解析。 - 返回值的类型和格式需要在两端保持一致,以避免解析错误。 通过以上步骤,我们...

    AS3分享功能(@TKCB)_flash分享_

    本教程聚焦于使用ActionScript 3(AS3)实现这样的功能,特别是在Flash环境中。ActionScript是Adobe Flash Professional和Flex Builder等工具所使用的编程语言,用于创建交互式的多媒体内容。 在"AS3分享功能(@...

Global site tag (gtag.js) - Google Analytics