Загрузка AS3 FileReference не работает в IE/FF (отлично работает в Chrome)

Я создаю файл Excel с Java на серверной части, и, кажется, он отлично работает в Chrome, но по какой-то причине он не работает в FF/IE. У меня самая последняя версия Flash в каждом браузере, указанном на этом сайте: http://helpx.adobe.com/flash-player/kb/find-version-flash-player.html

Я отправляю XML на сервер, он генерирует Excel и отправляет его во Flash. Я выполняю экспорт, делая следующее:

private var _fileRef:FileReference;

private function exportReport(e:MouseEvent):void
{       
    _fileRef = new FileReference();
    _fileRef.addEventListener(Event.COMPLETE, excelExportCompleteHandler);
    _fileRef.download(new URLRequest("exportReport"), "report.xlsx");

    function excelExportCompleteHandler(e:Event):void {
        trace('complete');
    }
}

Я перепробовал все возможные ошибки и обработчики, но ничего не выходит из строя, поэтому я поставил точку останова в полном обработчике и заметил, что есть ошибка ввода-вывода, просто она не происходит в обработчике IOErrorEvent.IO_ERROR.

Слева — успешная загрузка, справа — сбой.

Слева успешно, справа ошибка


person PublicHandle    schedule 09.01.2013    source источник


Ответы (1)


Я задал этот вопрос на форуме Adobe и нашел свой обходной путь. Это не идеально, но для заинтересованных: http://forums.adobe.com/message/4983605

person PublicHandle    schedule 15.01.2013
comment
Вы когда-нибудь продвинулись дальше в диагностике этого, или вы просто использовали свой обходной путь и вздохнули? У меня такая же проблема, также с xlsx. Опять же, обработчик IOErrorEvent не запускается, но блок try{} перехватывает для меня IOError. Я загружаю xlsx (просматривается), а затем загружаю его в swf для анализа как xml. Я задавался вопросом, блокирует ли IE/FF некоторую активность вокруг файлов .xlsx? Что особенно озадачивает в нашем случае, так это то, что многие пользователи IE в порядке, а другие нет. Журналы веб-сервера даже не показывают попытки. - person Stray; 10.12.2015