如何防止Flash的URLRequest转义网址?

Pel*_*oni 4 apache-flex flash urlrequest

我从我的Flex应用程序中加载一些来自servlet的XML,如下所示:

_loader = new URLLoader();
_loader.load(new URLRequest(_servletURL+"?do=load&id="+_id));
Run Code Online (Sandbox Code Playgroud)

你可以想象_servletURL就像http://foo.bar/path/to/servlet

在某些情况下,此URL包含重音字符(长篇故事).我将unescaped字符串传递给URLRequest,但似乎flash将其转义并调用转义的URL,这是无效的.想法?

Pel*_*oni 5

我的朋友路易斯想出来了:

您应该使用encodeURI执行UTF8URL编码 http://livedocs.adobe.com/flex/3/langref/package.html#encodeURI()

但不是unescape,因为它无法访问ASCII,请参阅 http://livedocs.adobe.com/flex/3/langref/package.html#unescape()

我认为这就是我们在URL中获得%E9而不是预期的%C3%A9.

http://www.w3schools.com/TAGS/ref_urlencode.asp