je dois envoyer une requête HTTP (et obtenir une réponse XML) à partir de Flash qui ressemble à ce qui suit:Envoi requête HTTP avec plusieurs paramètres ayant même nom
http://example.com/somepath?data=1&data=2&data=3
à savoir avoir plusieurs paramètres qui partagent le même nom, mais ont des valeurs différentes.
Jusqu'à présent, j'utiliser le code suivant pour effectuer des requêtes 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");
Dans ce cas, cela ne va pas: il n'y aura qu'un seul paramètre ayant une valeur dernière.
Quelles sont mes options? J'utilise actionscript 2.
Ajouté
Je suppose que je peux faire quelque chose comme ça:
var url:String = myCustomFunctionForBuildingRequestString();
var resp:XML = new XML();
resp.onLoad = function(success:Boolean) {/*...*/};
resp.load(url);
Mais dans ce cas, je perdais la capacité de faire des requêtes POST. Des alternatives?
La modification de la requête n'est pas appropriée.
Je sais que je ne peux pas le faire avec LoadVars, c'est pourquoi je pose la question. Je veux dire, LoadVars n'est évidemment pas la seule méthode pour envoyer des requêtes HTTP. Malheureusement, ni concaténer des paramètres en une seule, ni envoyer de requête en XML n'est pas approprié. – n0rd
Encore une fois, mon AS2 est limité - mais quelle que soit la méthode utilisée pour envoyer des données, ** une variable ne peut contenir qu'une seule valeur ** et vous devez donc effectuer un encodage comme concaténation ou xml ou json-array. – Amarghosh
Je ne parle pas de variables, je veux avoir plusieurs paramètres de requête avec le même nom, qui sont sans rapport avec les variables, à moins que quelqu'un (ce qui est le cas avec LoadVars) pour des raisons inconnues décide de faire une correspondance biunivoque leur. – n0rd