Flash AS3中的URL编码变量?
尝试通过Flash AS3中的URL编码变量?,flash,actionscript-3,urlencode,Flash,Actionscript 3,Urlencode,尝试通过URLRequestMethod.POST传递变量时,我遇到以下错误: 错误:错误#2101:传递给URLVariables.decode()的字符串必须是包含名称/值对的URL编码查询字符串 是否有用于字符串URL编码的方法?ActionScript 3的顶级函数有escape()和unescape()用于URL编码/解码。错误消息通常是通过将无效的查询字符串传递给URLVariables对象而产生的。但在大多数情况下,您不需要通过查询字符串。您可以将对作为常规属性添加到对象中,并让它
URLRequestMethod.POST传递变量时,我遇到以下错误:代码>
错误:错误#2101:传递给URLVariables.decode()的字符串必须是包含名称/值对的URL编码查询字符串
是否有用于字符串URL编码的方法?ActionScript 3的顶级函数有escape()和unescape()用于URL编码/解码。错误消息通常是通过将无效的查询字符串传递给URLVariables对象而产生的。但在大多数情况下,您不需要通过查询字符串。您可以将对作为常规属性添加到对象中,并让它进行编码和转义(这就是这个类要做的)
当然,跟踪不是必需的,它只是为了让您可以看到编码工作 此问题的解决方案是:
您必须将URLLoaderDataFormat设置为URLLoaderDataFormat.TEXT,而不是URLLoaderDataFormat.VARIABLES.
因为VARIABLES
表示不同类型的数据,而不是URLVariables
中的多个项目,所以我多次遇到这个问题,通常是我漏掉的myLoader.dataFormat=URLLoaderDataFormat.VARIABLES
行。如果您有此行,请尝试删除它:
request.method = URLRequestMethod.POST
最后,确保您通过变量theStatus=ok
收到响应,这样就可以解决问题了。这帮助med解决了我遇到的另一个问题。谢谢。如果您想对分隔符进行编码,还可以使用encodeURIComponent
和decodeURIComponent
。
request.method = URLRequestMethod.POST