Je reçois l'erreur suivante lorsque vous essayez de passer des variables via Erreur: Erreur # 2101: la chaîne passée à urlvariables.decode () doit être une chaîne de requête codée par l'URL contenant des paires de noms / valeur. P>
blockQuote>
existe-t-il une méthode d'encodage d'URL à chaîne? p> urlrequestmethod.post; code> p>
4 Réponses :
Il y a une évasion () et unescape () comme fonction de niveau supérieur d'ActionScript 3 pour le codage / décodage de l'URL. P>
Également utile sont Encodéturicomponent code> et
Decoduricomponent code> si vous souhaitez encoder des séparateurs.
Ce message d'erreur est généralement causé en passant une queryString non valide à un objet Urlvariables. Mais vous n'avez pas besoin de passer la querystring dans la plupart des cas. Vous pouvez simplement ajouter des paires à l'objet sous forme de propriétés régulières et le laisser faire le codage et l'échappement (ce que cette classe est censée faire).
var vars:URLVariables = new URLVariables(); vars.param1 = "Text to be escaped. Works for non ascii: ñ"; vars.param2 = "http://www.google.com/?q=something&test=1234"; trace(vars.toString());
Cela a aidé Med avec un autre problème que j'ai eu. Merci.
solution à ce problème est:
Vous devez définir UrlloaderDataFormat sur UrlloaderDataFormat.text non urlloaderdataformat.variables. Code>
Parce que
variables code> signifie différents types de données, pas plusieurs éléments dans
urlvariables code>. P>
Je suis tombé sur ce problème plusieurs fois et généralement son et assurez-vous enfin que vous recevez une réponse via une variable myLoader.dataformat = urlloaderdataformat.variables code> Ligne que j'ai raté. Essayez de supprimer cette ligne si vous l'avez:
Thestatus = ok code> alors cela devrait faire le tour. p> p>