2010-01-07 257 views
1

我得到一个模糊的“套接字超时”。当我加载我的网站时偶尔会出错。我为PHP数据发出各种HTTP请求,并使用Loader()类实例。任何人都可以阐明这个错误可能来自哪里?AS3:套接字超时

我希望有更多的来自梗错误的位置的指示......

这里是我的代码,我使用。 存在多个问题,但最重要的是catch在第一次加载时捕获错误。我有一个淡入功能,只有当加载器是完全加载,我知道我所有的URL链接工作,所以它不能这样。

public function loadImage(url:String):void { this._imageURL = url; this.alpha = 1.0; //需要这个,因为我们可能已经将图像淡化了

_ldr.alpha = 0.0; _prog.alpha = 1.0; _sqr.alpha = 0.0;

尝试 { _ldr.close(); _ldr.unload(); } catch(e:Error) trace(“error in bmdisplay:”+ e.message); }

if(!_ imageURL) { return; }

_loaded = false; _ldr.contentLoaderInfo.addEventListener(ProgressEvent.PROGRESS,onProgress); _ldr.contentLoaderInfo.addEventListener(Event.COMPLETE,onComplete); _ldr.contentLoaderInfo.addEventListener(IOErrorEvent.IO_ERROR,onError); _ldr.contentLoaderInfo.addEventListener(SecurityErrorEvent.SECURITY_ERROR,onError); _ldr.load(new URLRequest(_imageURL)); }

回答

1

您能否提供关于您实际加载的内容以及如何进行更精确的信息?

通过监听Loader对象的contentLoaderInfo上的securityErrorioError事件,您应该能够得到确切的请求,并抛出错误。

事情是这样的:

var loader:Loader = new Loader(); 
loader.contentLoaderInfo.addEventListener(IOErrorEvent.IO_ERROR, errorListener); 
loader.contentLoaderInfo.addEventListener(SecurityErrorEvent.SECURITY_ERROR, errorListener); 
var request:URLRequest = new URLRequest(url); 
loader.load(request); 

... 

private function errorListener(event:Event):void { 
    var url_causing_the_error:String = LoaderInfo(event.target).loaderURL; 
    ... 
} 
+0

是;它基本上是这个代码。我会通过更新我的帖子发布具体信息。 – jml

+0

我知道,当我尝试卸载图像时,它是捕获错误的Loader()侦听器,但错误说明了“尚未加载”的效果。如果可能的话,我想知道如何避免这个错误。 – jml

+0

我在回答这个问题,因为我不确定我完全理解了我所问的问题。最终,我想我是问我是否必须检查图像是否通过布尔加载。 – jml