мне нужно отправить запрос HTTP (и получить ответ XML) из флэш-памяти, который выглядит похоже на следующее:Отправка запроса HTTP с несколькими параметрами, имеющие то же имя
http://example.com/somepath?data=1&data=2&data=3
Т.е. имея несколько параметров, которые имеют одно и то же имя, но имеют разные значения.
До сих пор я использовал следующий код, чтобы сделать HTTP запросы:
var resp:XML = new XML();
resp.onLoad = function(success:Boolean) {/*...*/};
resp.ignoreWhite = true;
var req:LoadVars = new LoadVars();
req["someParam1"] = 3;
req["someParam2"] = 12;
req.sendAndLoad("http://example.com/somepath", resp, "GET");
В данном случае это не будет делать: там будет только один параметр, имеющий последнее значение.
Какие у меня варианты? Я использую ActionScript 2.
Добавлено
Я думаю, что я могу сделать что-то вроде этого:
var url:String = myCustomFunctionForBuildingRequestString();
var resp:XML = new XML();
resp.onLoad = function(success:Boolean) {/*...*/};
resp.load(url);
Но в этом случае я теряю способность делать запросы POST. Любые альтернативы?
Изменение запроса не подходит.
Я знаю, что не могу сделать это с LoadVars, вот почему я задаю вопрос. Я имею в виду, LoadVars, очевидно, не единственный метод для отправки HTTP-запросов. К сожалению, ни конкатенация параметров в одиночный, ни запрос отправки как XML не подходит. – n0rd
Опять же, мой AS2 ограничен, но любой метод, который вы используете для отправки данных, ** одна переменная может содержать только одно значение **, и поэтому вы должны сделать некоторую кодировку, такую как конкатенация или xml или json-массивы, чтобы выполнить это. – Amarghosh
Я не спрашиваю о переменных, я хочу иметь несколько параметров запроса с тем же именем, которые совершенно не связаны с переменными, если только кто-то (что имеет место с LoadVars) по неизвестным причинам решает сделать взаимно однозначное соответствие между их. – n0rd