Приложение My Flex использует локальные SharedObjects. Были случаи, когда файл cookie Flash был поврежден, например, из-за сбоя плагина. В этом случае SharedObjects.getLocal выдаст исключение (# 2006).Flex: восстановление с поврежденного локального SharedObject
Мой клиент хочет, чтобы приложение восстанавливалось изящно: если файл cookie поврежден, я должен заменить его на пустой.
Проблема заключается в том, что если SharedObject.getLocal не возвращает экземпляр SharedObject, мне нечего вызывать clear().
Как удалить или заменить такой файл cookie?
Большое спасибо!
EDIT:
Существует не так много кода, чтобы показать - я получить доступ к локальному печенье, и я могу легко поймать исключение. Но как я могу создать новый общий объект в том же месте, как только я поймаю исключение?
try {
localStorage = SharedObject.getLocal("heywoodsApp");
} catch (err:Error) {
// what do I do here?
}
Ошибка легко воспроизведена путем повреждения двоичного содержимого Flash-файла cookie редактором.
+1 для вопроса; но у меня нет туманной идеи, что такое решение. Какое ваше приложение делает, что сбой плагина является обычным явлением? Можете ли вы поделиться кодом? Можете ли вы поделиться полным исключением? Интересно, можно ли использовать событие uncaughtException для создания нового SharedObject? – JeffryHouser
Приложение является интерфейсом для мониторинга и анализа бизнес-данных для внутреннего использования компании. Сбои на самом деле не являются обычным явлением, но после сбоя Windows произошел отчет о коррумпированном файле cookie, и поскольку пользователи не обладают техническими знаниями, достаточными для очистки своих файлов cookie Flash, клиент сделал запрос на функцию (т.е. я получите больше денег, если я это сделаю), что приложение делает это для них, если инцидент повторяется. Я поставлю код в исходный комментарий. –
@ThomasHeywood вы как-то решили эту проблему? Я не вижу здесь никакого хорошего ответа:/ –