Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   Серверные технологии и Flash (http://www.flasher.ru/forum/forumdisplay.php?f=62)
-   -   Загруженное через loadBytes не отображается (http://www.flasher.ru/forum/showthread.php?t=150309)

TihelpER 09.02.2011 17:48

Загруженное через loadBytes не отображается
 
Здравствуйте.

Запрашиваю у сервера изображение POST-запросом, получаю в ответ байтовый массив закодированный в Base64. По завершению загрузки преобразовываю содержимое в ByteArray и пытаюсь загрузить через метод loadBytes() экземпляра Loader что бы потом отобразить на сцене.

По завершению загрузки объект доступен, имеет правильные значения width, height, но не виден.

Код AS3:

contentLoader = new Loader()
addChild(contentLoader)
contentLoader.loadBytes(requestObject.data) // Там у объекта полученные байты
contentLoader.contentLoaderInfo.addEventListener(Event.COMPLETE, bytesLoadComplete)
// в bytesLoadComplete(e:Event) есть корректные размеры загруженного изображения,
// stage у contentLoader  и пр. — выглядит как здоровый объект

Пробовал, начитавшись хэлпа:
— добавлять LoaderContext с checkPolicyFile = fasle — не помогает;
— добавлять маску объекту Loader;
— принуждать к загрузке crossdomain.xml, в котором <allow-access-from domain="*" />
— ловить ошибки SecurityError и IllegalOperationError при загрузе

Загрузка с этого же сервера через load(new URLRequest(_link)) по абсолютной ссылке на файл проходит отлично: и изображения и swf грузятся, отображаются.

В чём я надурачил?

Добавлено через 3 часа 8 минут
Как выяснилось ко мне приходила кривая Base64-строка: порой с неожиданным завершением, порой с пробелом посреди строки. От того и правильное определение типа, размеров, но невозможность отобразить.

Мелкие изображения (до 5х5 пксл) передаются на ура.

Будем искать ошибку в запросе. Если есть идеи — буду рад услышать.


Часовой пояс GMT +4, время: 17:49.

Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.