尝试使用
URLRequestMethod.POST
传递变量时,出现以下错误:
是否有一种方法进行字符串URL编码?错误:错误#2101:传递给URLVariables.decode()的字符串必须是包含名称/值对的URL编码查询字符串。
URLRequestMethod.POST
传递变量时,出现以下错误:
是否有一种方法进行字符串URL编码?错误:错误#2101:传递给URLVariables.decode()的字符串必须是包含名称/值对的URL编码查询字符串。
在ActionScript 3中,有escape()和unescape()作为顶级函数用于URL编码/解码。
该错误消息通常是由于向URLVariables对象传递非有效的查询字符串而导致的。但在大多数情况下,您不需要传递查询字符串。您可以像添加常规属性一样向对象添加键值对,并让它执行编码和转义(这就是此类的用途)。
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());
我遇到过这个问题很多次,通常是因为我错过了myLoader.dataFormat = URLLoaderDataFormat.VARIABLES
这一行。如果你有这一行,请尝试将其删除:
request.method = URLRequestMethod.POST
theStatus=okay
接收响应,那么就可以解决问题了。
encodeURIComponent
和decodeURIComponent
也非常有用。 - Dan Garant