Как получить / получить переменные из URL во Flash AS3 - PullRequest
7 голосов
/ 28 апреля 2010

Итак, у меня есть URL-адрес, из которого мне требуется мой Flash-фильм для извлечения переменных:

пример ссылки:
http://www.example.com/example_xml.php?aID=1234&bID=5678

Мне нужно получить номер AID и номера BID.

Я могу получить полный URL-адрес в строке через ExternalInterface

var url:String = ExternalInterface.call("window.location.href.toString");
if (url) testField.text = url;

Просто не знаете, как манипулировать строкой, чтобы просто получить числа 1234 и 5678.

Цените любые советы, ссылки или помощь в этом!

Ответы [ 2 ]

12 голосов
/ 28 апреля 2010

Создать новый экземпляр URLVariables.

// given search: aID=1234&bID=5678
var search:String = ExternalInterface.call("window.location.search");
var vars:URLVariables = new URLVariables(search);
trace(vars.aID); // 1234
trace(vars.bID); // 5678
1 голос
/ 28 апреля 2010
var valuePairs:Array = url.substring(url.indexOf("?")+1).split("&");
var map:Object = new Object();
for (var i:int=0; i < valuePairs.length; i++) {
    var nextValuePair:Array = valuePairs[i].split("=");
    map[nextValuePair[0]] = nextValuePair[1];
}


trace(map["aID"]); // 1234

Не проверенный код! Это просто с помощью простой манипуляции со строками.

и ... почти 1 вкладыш (также не проверен)

var map:Object = new Object();
var temp:Array;
for each (var i:String in /.*\?(.*)/.exec(url)[1].split("&")) map[(temp=i.split("="))[0]]=temp[1];

но, конечно, лучше использовать urlVariables:)

...