flash.net.URLRequest остается в ожидании - PullRequest
0 голосов
/ 05 сентября 2011

У меня есть приложение flash / flex и проблема с вызовом URLRequest.Когда звонят на сервер, я получаю контент просто отлично.После этого содержимое сохраняется в кеше, и в следующий раз URLRequest использует локальный кеш для его извлечения. Иногда это работает, но иногда вызов никогда не завершается - остается в ожидании .Я использую последнюю версию флэш-плеера и разные браузеры.На моем компьютере я могу воспроизвести проблему с помощью Chrome, а коллега может выполнить репликацию в Firefox.Я посмотрел на файлы журналов флэш-плеера, и ничего не изменилось, когда звонок успешен, а когда звонок остается в ожидании ...

Также мой друг не мог повторить эту проблему, пока не обновил флэш-плеер до последней версии.

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

В настоящее время я решил эту проблему, заставив клиента не использовать кеш, используя дату истечения срока действия и отсутствие кеша, но я бы хотел использовать кеш и понять, почему это происходит.

Большое спасибо!

Ответственный код:

loader = new utils.URLLoader();
loader.dataFormat = flash.net.URLLoaderDataFormat.BINARY;
loader.addEventListener(flash.events.Event.COMPLETE, this.onLoad);
loader.addEventListener(flash.events.IOErrorEvent.IO_ERROR, this.onErr);
loader.load(new flash.net.URLRequest(URL));

обновление:

Теперь я обнаружил, что кеш для него не отвечает.Я очищал кэш каждый раз перед запросом и все еще могу воспроизвести эту ошибку.Запрос GET по-прежнему отображается как ожидающий, но на этот раз я запустил wireshark, который показывает интересный результат - проблемный запрос GET не зарегистрирован в wireshark.Как это может быть возможно?

Ответы [ 2 ]

0 голосов
/ 06 сентября 2011

В коде оболочки .html, который встраивает ваш swf, попробуйте изменить allowScriptAccess = "sameDomain" на allowScriptAccess = "always".Появляется дважды.

0 голосов
/ 05 сентября 2011

Убедитесь, что выслушали все виды ошибок, которые может отправить URLLoader: Adobe LiveDoc URLLoader

Если вы не в режиме отладки, некоторые ошибки могут быть выданы, но не обнаруженыпоэтому молчи.

...