ActionScript 3.0 URLRequest с относительной ссылкой

Я пытаюсь передать некоторые данные между PHP и Flash. Во Flash мне удалось заставить работать код ниже. Проблема в том, что я хочу использовать относительную ссылку, такую ​​​​как «data/config.php», однако это дает мне следующую ошибку:

Error #2044: Unhandled ioError:. text=Error #2032: Stream Error.

Я попытался найти ошибку, но, похоже, у нее много возможных причин, и я не могу найти способ обойти ее в моем случае. Вот код (это работает, когда URL-адрес абсолютный):

submit_btn.addEventListener(MouseEvent.CLICK, onClickHandler);

function onClickHandler(event:MouseEvent):void
{
    var variables:URLVariables = new URLVariables();
    var url_Loader:URLLoader = new URLLoader;
    var url_Request:URLRequest = new URLRequest("config.php");

    url_Request.method = URLRequestMethod.POST;
    url_Request.data = variables;

    url_Loader.dataFormat = URLLoaderDataFormat.VARIABLES;
    url_Loader.addEventListener(Event.COMPLETE, completeHandler);

    variables.uname = uname_txt.text;
    variables.sendRequest = "parse";
    url_Loader.load(url_Request);
};

function completeHandler(event:Event):void
{
    var phpVar1 = event.target.data.var1;
    var phpVar2 = event.target.data.var2;

    result1_txt.text = phpVar1;
    result2_txt.text = phpVar2;
};

person user2382314    schedule 28.05.2013    source источник
comment
URL-адрес, который он ищет, относится к пути веб-страницы, отображающей SWF, а не к местоположению SWF. Если у вас нет страницы и SWF в одном каталоге, вам нужно изменить URL-адрес, чтобы использовать веб-страницу в качестве источника относительного пути, а не SWF   -  person Josh    schedule 28.05.2013


Ответы (2)



Если вы используете Flex, одним из вариантов является создание абсолютного пути с помощью объекта FlexGlobals.topLevelApplication.

Например, вы можете получить URL-адрес страницы:

FlexGlobals.topLevelApplication.url
person duTr    schedule 29.05.2013