AS3:套接字超时

ufj5ltwl  于 2022-09-21  发布在  Apache
关注(0)|答案(1)|浏览(174)

我得到一个模糊的“套接字超时”。当我加载我的网站时,有时会出错。我对PHP数据发出了各种HTTP请求,并且还使用了Loader()类示例。谁能解释一下这个错误可能是从哪里来的?

我希望有更多的迹象表明错误源于哪里……

以下是我正在使用的代码。存在多个问题,但最重要的是Catch{}在第一次加载时捕获错误。我有一个淡入功能,只有在加载程序完全加载的情况下才能工作,而且我知道我的所有URL链接都可以工作,所以不可能是这样的。

public function loadImage(url:String):void 
  {
   this._imageURL = url;
   this.alpha = 1.0; //need this because we might have just faded the image out

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

   try 
   {
    _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));
  }
jrcvhitl

jrcvhitl1#

您能提供更准确的信息,说明您实际加载的是什么以及如何加载吗?

通过监听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;
  ...
}

相关问题