我的AS3中有一个函数经常调用PHP文件。在大多数情况下,它可以工作,但偶尔会失败,并抛出我在标题中使用的错误。我对此进行了广泛的研究,并以以下方式开始捕获事件:
public static function Bar():void {
var request:URLRequest = new URLRequest("path/to/file.php");
var requestVariables:URLVariables = new URLVariables();
var loader:URLLoader = new URLLoader();
requestVariables.event = "foo";
request.method = URLRequestMethod.POST;
request.data = requestVariables;
loader.dataFormat = URLLoaderDataFormat.TEXT;
loader.load(request);
loader.addEventListener(IOErrorEvent.IO_ERROR, onIOError, false, 0, true);
loader.addEventListener(Event.COMPLETE, onIOComplete, false, 0, true);
}
private static function onIOComplete(e:Event):void
{
var loader:Loader = e.target as Loader;
if ( loader != null )
{
loader.removeEventListener(IOErrorEvent.IO_ERROR, onIOError);
loader.removeEventListener(Event.COMPLETE, onIOComplete);
}
Logger.log("LOADER COMPLETE");
}
private static function onIOError(e:IOErrorEvent):void
{
var loader:Loader = e.target as Loader;
if ( loader != null )
{
loader.removeEventListener(IOErrorEvent.IO_ERROR, onIOError);
loader.removeEventListener(Event.COMPLETE, onIOComplete);
}
Logger.log("ERROR: " + e.toString());
}
尽管有上面的代码,我仍然偶尔会看到流错误。还有更多我应该/可能要做的事情吗?
最佳答案
显然问题出在我本应该使用cURL的情况下,我正在调用的php文件正在使用file_get_contents进行网络调用。更改它们后,第二个网络 call 停止失败,因此我不再看到错误。
关于actionscript-3 - 错误#2044 : Unhandled ioError:. text=Error #2032: Stream Error. in AS3,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8579858/