Я пытался «преднамеренно» выдать ошибку, пытаясь получить доступ к неправильному URL следующим образом:
try
{
var myData:URLRequest = new URLRequest("http://www.abc.com/");
myData.method = URLRequestMethod.POST;
var vars:URLVariables = new URLVariables();
var loader:URLLoader = new URLLoader();
loader.load(myData);
}
catch(e:Error)
{
trace("Yess!, caught it!");
}
Приведенный выше код не может поймать любую ошибку!
Позже я обнаружил, что есть два пакета:
flash.errors.IOError;
flash.events.IOErrorEvent;
поэтому я понял, что он должен иметь addEventListener следующим образом:
loader.addEventListener (IOErrorEvent.IO_ERROR, errorOccured);
Но это заставило меня задуматься, почему я должен слушать событие на предмет ошибки. Почему я не могу просто попробовать и поймать. Почему два способа обработки ошибок, один - попытаться поймать другого, прослушивая событие? .
Спасибо
V.