Подписанный RSL без Flex (чистый проект AS3)

Вот краткое объяснение того, как мы можем "смоделировать" систему RSL, используемую в Flex с чистым AS3: загрузка RSL без использования flex?

Но как насчет подписанных РГБ? Можем ли мы использовать эту технику для загрузки файлов SWZ? будет ли их кэшировать игрок? Как мы можем "повторно" использовать SWZ, кэшированный плеером, в чистом проекте AS3?

Спасибо! Энрике.

2 ответа

Решение

ОК, это решение (еще не проверено, но я уверен, что оно работает)
Пример из ссылки Adobe AS3:
// URLRequest, свойство дайджеста:

var myURLReq:URLRequest = new URLRequest();
myURLReq.url = "http://yourdomain/users/jdoe/test01/_rsc/Automated/AssetCaching_rsc/test01/rsl.swz";
myURLReq.digest = "3B0AA28C7A990385E044D80F5637FB036317BB41E044D80F5637FB036317BB41";
var myURLLoader:URLLoader = new URLLoader();
myURLLoader.dataFormat = URLLoaderDataFormat.BINARY;
myURLLoader.addEventListener("complete", onC);

myURLLoad.load(myURLReq);

function onC(e) {
    var someLoader:Loader = new Loader();
    addChild(someLoader);
    someLoader.loadBytes((ByteArray)(myURLLoad.data)); 
}

Таким образом, мы можем загрузить подписанный RSL (.SWZ), как и любой другой SWF, НО! мы должны использовать URLLoader, а не Loader, и предоставить свойство дайджеста. Затем мы используем Loader для загрузки byteArray из URLLoader. Подписанный SWZ проверяется внутри проигрывателя, и если он обнаруживает, что подписан Adobe, то он будет кэширован проигрывателем, нам не нужно ничего делать. Я думаю, что Flash Player проверяет автоматически, и перед загрузкой любого SWZ, если этот SWZ уже кэшируется игроком.

Это все, что я думаю.

если вы хотите увидеть более подробную информацию, проверьте мой ответ во FlexCoders:
http://tech.groups.yahoo.com/group/flexcoders/message/159010

Подписанные SWC (то есть SWZ) загружаются в кеш флеш-плеера, а не в кеш браузера. Поэтому разрешен только Uber доверенный код, который в данный момент поступает только от Adobe.

Для предварительной загрузки? Единственный способ, который я знаю, на самом деле не является способом, но, скажем, у вас есть информационная страница или страница входа перед вашим приложением Flex, загружайте RSL, когда пользователь, возможно, что-то читает, включив легкий SWF-файл, который использует те же RSL, что и ваше основное приложение. Это обман, но видно, что он используется, когда пропускная способность минимальна, и вы хотите получить выгоду при первой загрузке приложения.

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

Другие вопросы по тегам