![]() |
Подписаться на любую ошибку
Подскажите пожалуйста как подписаться на любую необработанную ошибку, которая вываливается пользователю в браузере. И как не показывать юзверю это? Хочу потом отправлять её на сервер.
|
Заключите код, который может выдавать ошибку, в блок try { erroneous code } catch (error:Error) { error handler code }. Если в этом блоке возникнет ошибка, выполнится код в блоке catch. В нем уже можете любопытствовать свойством error.message. Про класс Error и его подклассы написано в хелпе.
|
Не сработает если например ошибка будет в лоадере.
Делаем loader.load() - ошибки нету. Но в процессе загрузки может оказаться неверный урл или еще куча всякой лабуды типа прав доступа. Так что подписка всё-равно нужна. |
Что мешает подписаться ручками? Ошибок не так уж и много. Штуки 2-4 на лоадер. А другие, это какие например? RTE при addChiln(null)? Или при неопреденном stage? За этим должен следить кодер.
|
Будет работать только под FlashPlayer 10.1 и выше
Код AS3:
Цитата:
|
у нет стрима ж разные есть)
|
Цитата:
gloomyBrain, заинтересовал ваш код для 10.1+ плеера. Он хорош, но не могу представить ситуацию, когда он пригодится. Если для просто заглушки на все и вся - это же не хорошо, а как потом отлавливать, где и чего стопорится? Но наверняка можно использовать вместе с обычными, добавленными ручками, отловами ошибок - тех же SecurityError и IOError. А какие еще могут быть ошибки у флешки? |
Цитата:
|
boleg, если у event в таком случае есть паблик константы (или что там), чтобы идентифицировать ошибку, то да. Проверить не могу - FD отказывается выдавать класс UncaughtErrorEvent вообще.
|
Цитата:
Но, несмотря на это, пригодиться может. Например, вот в такой ситуации. |
| Часовой пояс GMT +4, время: 15:25. |
Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.