您的位置:首页 > 其它

Flash 加载外部数据-ajax与图片加载

2013-12-26 16:09 176 查看
1,ajax请求数据
/*** @desc 发动ajax请求* @param url:url [data:ajax的data func:callback]***/private function _ajax(ajaxurl:String,data="",callback="",method=URLRequestMethod.POST){var self = this;this._ajaxTimer = new Timer(1000,5);//请求超时时间 5秒this._ajaxTimer.start();this._ajaxLoader = new URLLoader();this._ajaxLoader.dataFormat =  URLLoaderDataFormat.TEXT;this._ajaxLoader.addEventListener(Event.COMPLETE,function(e){ self._ajaxComplete(e,callback); });this._ajaxLoader.addEventListener(IOErrorEvent.IO_ERROR, function():void{});this._ajaxLoader.addEventListener(SecurityErrorEvent.SECURITY_ERROR, function():void{});this._ajaxRequest = new URLRequest(ajaxurl);this._ajaxRequest.data =data;this._ajaxRequest.method = method;this._ajaxLoader.load(this._ajaxRequest);}/*** @desc 发动ajax请求结束的callback* @param e:event [ func:callback]***/private function _ajaxComplete(evt:Event,callback:Function){try {this._ajaxTimer.stop();if(!evt.target.data){return;}var _jd =  JSON.decode((evt.target.data));this._jsonData =_jd;callback(_jd);} catch (e: * ) {//trace(evt.target.data);showDialogtrace("ajax faild:"+e);}}
出现ajax faild的时候,也许是callback函数里的错误,而不是ajax的错误(巨坑)使用POST请求后,IE下可能会出现请求为GET的时候,原因不明2,加载图片
var _urlLoader:Loader = new Loader();var _bm:Bitmap;_urlLoader.contentLoaderInfo.addEventListener(Event.COMPLETE,function(e){_bm = new Bitmap(e.target.content.bitmapData);_urlLoader.load( new URLRequest(url),new LoaderContext(true));
new LoaderContext(true)是为了主动在异步的的服务器上找crossdomain.xml,不设置就等着跨域的坑吧
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: