2013-03-06 110 views
0

我想知道如果我的代码将工作捕捉加载错误,如果它是安全的尝试重新加载。由于它是从我的服务器加载的,我假设所有文件都存在,加载错误只是“网络出现问题”。赶上一个加载器错误,并尝试重新加载

m_loader.contentLoaderInfo.addEventListener(Event.COMPLETE, LoaderComplete); 
m_loader.contentLoaderInfo.addEventListener(IOErrorEvent.IO_ERROR, LoaderError); 
m_loader.load(new URLRequest("MyFile.png")); 

private function LoaderError(e:Event):void 
{ 
    //Try to reload 
    m_loader.load(new URLRequest("MyFile.png")); 
} 

我的两个问题如下 1)IOErrorEvent.IO_ERROR将捕获所有下载文件时可能发生的可能的网络错误。 2)是否可以尝试另一个重新加载?

在此先感谢。

回答

0

1 - 是的,它会赶上大部分网络错误,你也可能要检查SecurityErrorEvent.SECURITY_ERROR但可能会发生的事情,如果你没有正确的crossdomain.xml文件

2 - 它可以尝试另一次重新加载,但也可能会失败,我通常会尝试重新加载一次,如果失败,则使用我在代码中创建的默认图像。这样,即使由于网络问题无法加载某些图像,程序仍然可以正常工作。

+0

Barış在一般情况下都是正确的,您应该通过检查错误并避免重试限制来避免无效情况的循环。 – Ihsan 2013-03-06 08:24:59