Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 3.0 (http://www.flasher.ru/forum/forumdisplay.php?f=83)
-   -   Помогите переписать подгрузку данных с AS3 на AS2 (http://www.flasher.ru/forum/showthread.php?t=152751)

bjd 22.03.2011 19:09

Помогите переписать подгрузку данных с AS3 на AS2
 
Есть код на AS3 который выполняет подгрузку swf c другого домена передавая в нее некоторые значения.
Код AS3:

Security.allowInsecureDomain("*");
Security.allowDomain("*");
Security.loadPolicyFile("https://secure.safecharge.com/crossdomain.xml");
Security.loadPolicyFile("http://www.safecharge.com/crossdomain.xml");
 
var context:LoaderContext = new LoaderContext();
var SC_loader:Loader = new Loader();
SC_loader.name = "SC_loader";
var _dispatchEnterFrameFunc:Function;
var SC_params:URLVariables = new URLVariables();
 
// -------------- Initial Params --------------
SC_params.buyButtonProductId = 1034;
SC_params.flash_version = 1;
 
try
{
        var _request:URLRequest = new URLRequest("https://secure.gate2shop.com/ppp/flashLoader/flash.swf");
        _request.data = SC_params;
        try
        {
                SC_loader.load(_request, context);
        }
        catch (ex:Error)
        {
                trace('SC_loader: ' + ex);
        }
}
catch (e:TypeError)
{
}
addChild(SC_loader);

Подскажите пожалуйста, возможно ли переписать этот код на AS2? Если нет, то почему? А если да, то как?

adman 22.03.2011 19:16

помойму если не ошибаюсь, то Security не работает в AS2

bjd 22.03.2011 19:22

Цитата:

Сообщение от adman (Сообщение 982894)
помойму если не ошибаюсь, то Security не работает в AS2

Как раз с Security проблем нет.
Код AS1/AS2:

//Security.allowInsecureDomain("*");
System.security.allowInsecureDomain("*")
//Security.allowDomain("*");
System.security.allowDomain("*");
//Security.loadPolicyFile("https://secure.safecharge.com/crossdomain.xml");
System.security.loadPolicyFile("https://secure.safecharge.com/crossdomain.xml");
//Security.loadPolicyFile("http://www.safecharge.com/crossdomain.xml");
System.security.loadPolicyFile("http://www.safecharge.com/crossdomain.xml");

А как быть с остальной частью кода?..

i.o. 22.03.2011 19:28

bjd, где вы такой быдлокод нашли то? Аж два try..catch

На ас2 будет примерно так:
Код AS1/AS2:

var movieUrl:String = 'https://secure.gate2shop.com/ppp/flashLoader/flash.swf';
movieUrl += '?buyButtonProductId=1034';
movieUrl += '&flash_version=1';
 
var mcLoader:MovieClip = this.createEmptyMovieClip( 'mcLoader', this.getNextNighestDepth() );
mcLoader.loadMovie( movieUrl );


Bgg 22.03.2011 19:43

Цитата:

Сообщение от i.o. (Сообщение 982896)
bjd, где вы такой быдлокод нашли то? Аж два try..catch[/as]

Вдруг первый catch не поймает?!

bjd 22.03.2011 20:12

На данный момент расклад такой:

создав новый AS3 файл, вставив в ключевой кадр следующий AS3 код и откомпилировав... увидим как грузится swf
Код AS3:

Security.allowInsecureDomain("*");
Security.allowDomain("*");
Security.loadPolicyFile("https://secure.safecharge.com/crossdomain.xml");
Security.loadPolicyFile("http://www.safecharge.com/crossdomain.xml");
 
var context:LoaderContext = new LoaderContext();
var SC_loader:Loader = new Loader();
SC_loader.name = "SC_loader";
var _dispatchEnterFrameFunc:Function;
var SC_params:URLVariables = new URLVariables();
 
// -------------- Initial Params --------------
SC_params.buyButtonProductId = 1034;
SC_params.flash_version = 1;
 
var _request:URLRequest = new URLRequest("https://secure.gate2shop.com/ppp/flashLoader/flash.swf");
_request.data = SC_params;
try
{
        SC_loader.load(_request, context);
}
catch (ex:Error)
{
        trace('SC_loader: ' + ex);
}
 
addChild(SC_loader);

но создав новый AS2 файл, вставив в ключевой кадр AS2 код и откомпилировав... увидим чистый экран.
Код AS1/AS2:

System.security.allowInsecureDomain("*")
System.security.allowDomain("*");
System.security.loadPolicyFile("https://secure.safecharge.com/crossdomain.xml");
System.security.loadPolicyFile("http://www.safecharge.com/crossdomain.xml");
 
 
var movieUrl:String = 'https://secure.gate2shop.com/ppp/flashLoader/flash.swf';
movieUrl += '?buyButtonProductId=1034';
movieUrl += '&flash_version=1';
 
var mcLoader:MovieClip = this.createEmptyMovieClip( 'mcLoader', this.getNextNighestDepth() );
mcLoader.loadMovie( movieUrl );

У кого какие мысли по поводу чистого экрана ?

i.o. 22.03.2011 20:30

Цитата:

создав новый AS3 файл, вставив в ключевой кадр следующий AS3 код и откомпилировав... увидим
Код:

Error opening URL 'https://secure.gate2shop.com/ppp/flashLoader/flash.swf?flash%5Fversion=1&buyButtonProductId=1034'
Error #2044: Unhandled IOErrorEvent:. text=Error #2035: URL Not Found.
Error opening URL 'http://www.safecharge.com/crossdomain.xml'


bjd 22.03.2011 20:42

Цитата:

Сообщение от i.o. (Сообщение 982911)
Код:

Error opening URL 'https://secure.gate2shop.com/ppp/flashLoader/flash.swf?flash%5Fversion=1&buyButtonProductId=1034'
Error #2044: Unhandled IOErrorEvent:. text=Error #2035: URL Not Found.
Error opening URL 'http://www.safecharge.com/crossdomain.xml'


странно, но у меня грузит swf... и не выдает ошибок

Пожалуйста, кто-нибудь еще, попробуйте создать пустой AS3 файл, вставить в него код и отпишитесь о результатах.

i.o. 22.03.2011 20:48

ну вот просто откройте в браузере - http://www.safecharge.com/crossdomain.xml
у меня ничего не открывается
Цитата:

The connection has timed out

bjd 22.03.2011 20:54

Цитата:

Сообщение от i.o. (Сообщение 982923)
ну вот просто откройте в браузере

немного упростил код.. и он все равно работает.

Код AS3:

Security.allowInsecureDomain("*");
Security.allowDomain("*");
 
var context:LoaderContext = new LoaderContext();
var SC_loader:Loader = new Loader();
SC_loader.name = "SC_loader";
 
var _request:URLRequest = new URLRequest("https://secure.gate2shop.com/ppp/flashLoader/flash.swf?buyButtonProductId=1034&flash_version=1");
 
try
{
        SC_loader.load(_request, context);
}
catch (ex:Error)
{
        trace('SC_loader: ' + ex);
}
 
addChild(SC_loader);



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

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