PDA

Просмотр полной версии : Error opening URL - обработка исключительной ситуации


Маруська
26.08.2013, 21:23
Ищу-ищу - ничего найти не могу.
Нужно обработать ошибку на AS 2.0, но никакого примера скрипта найти не могу

Нужно реализовать такое:

{loadMovie(url);
if (Error opening URL){loadMovie(url2);}
}

подскажите правильную реализацию. Нашла только, что обработка ioError, но какие параметры - непонятно

dark256
26.08.2013, 21:30
Поищите по форуму ваш loadMovie.......
И почитайте, что рекомендуют использовать вместо него.

Маруська
26.08.2013, 22:08
не, нипанятна.. что вместо? куда вместо? чем плох старый добрый loadMovie?
чем может быть лучше LoadClip и вообще зачем усложнять?
Мне просто нужен обработчик ошибки.
Такая конструкция результатов не даёт

try { loadMovie(url);throw("err")}
catch (ioError){ loadMovie(url2)}

она в любом случае заменят url, даже если ошибки и не было

Добавлено через 32 минуты
var loader:MovieClipLoader = newMovieClipLoader
var listener:Object = new Object();
listener.onLoadError = function () {
url=url2; trace('something')
}

loader.addListener(listener);
loader.loadClip(url);

тоже ничего не делает

dark256
26.08.2013, 23:47
Раз "ничего не делает" - значит ошибок нет......

Маруська
26.08.2013, 23:56
в output зато выдает Error opening URL '...'

Добавлено через 2 минуты
Так работает корректно =)

var loader:MovieClipLoader = new MovieClipLoader(); // Создаем загрузчик
var listener:Object = new Object(); // Создаем листенер для событий загрузчика
loader.addListener(listener);
// Загружаем внешний фильм, указав его абсолютный адрес
loader.loadClip(url1);

// При возникновении сбоя сообщение о его причинах должно появиться в
listener.onLoadError = function(clip:MovieClip, message:String):Void {
if (message = "URLNotFound") {
trace("Hеверно указан адрес - загрузка невозможна"),url1=url2
}
loader.loadClip(url); }

dark256
27.08.2013, 12:44
if (message = "URLNotFound") - для чего?
Выводите просто любой код ошибки уже.

Маруська
01.09.2013, 02:25
if (message = "URLNotFound") - для чего?
Выводите просто любой код ошибки уже.

Мне нужно было отслеживать ошибку именно такой ситуации, когда отсутствует ресурс. Поэтому так