avm2: Added flash.net.URLVariables
This commit is contained in:
parent
53f42e0bec
commit
5ac4f4358d
|
@ -0,0 +1,33 @@
|
|||
package flash.net {
|
||||
import flash.utils.escapeMultiByte;
|
||||
public dynamic class URLVariables {
|
||||
// TODO: construct from String
|
||||
// TODO: implement decode()
|
||||
public function URLVariables() {}
|
||||
|
||||
public function toString(): String {
|
||||
var acc : String = ""
|
||||
var sep :String = ""
|
||||
for (p in this) {
|
||||
var pe : String = escapeMultiByte(p);
|
||||
var val = this[p];
|
||||
if (val is Array) {
|
||||
for (i in val) {
|
||||
acc += sep;
|
||||
acc += pe;
|
||||
acc += "=";
|
||||
acc += escapeMultiByte(val[i]);
|
||||
sep = "&";
|
||||
}
|
||||
continue;
|
||||
}
|
||||
acc += sep;
|
||||
acc += pe;
|
||||
acc += "=";
|
||||
acc += escapeMultiByte(val);
|
||||
sep="&";
|
||||
}
|
||||
return acc;
|
||||
}
|
||||
}
|
||||
}
|
|
@ -167,6 +167,7 @@ include "flash/net/URLLoaderDataFormat.as"
|
|||
include "flash/net/URLRequest.as"
|
||||
include "flash/net/URLRequestHeader.as"
|
||||
include "flash/net/URLRequestMethod.as"
|
||||
include "flash/net/URLVariables.as"
|
||||
|
||||
include "flash/printing/PrintJobOrientation.as"
|
||||
include "flash/security/CertificateStatus.as"
|
||||
|
|
|
@ -537,6 +537,7 @@ swf_tests! {
|
|||
(as3_uint_tostring, "avm2/uint_tostring", 1),
|
||||
(as3_unchecked_function, "avm2/unchecked_function", 1),
|
||||
(as3_url_loader, "avm2/url_loader", 1),
|
||||
(as3_url_vars, "avm2/url_vars", 1),
|
||||
(as3_urshift, "avm2/urshift", 1),
|
||||
(as3_vector_coercion, "avm2/vector_coercion", 1),
|
||||
(as3_vector_concat, "avm2/vector_concat", 1),
|
||||
|
|
|
@ -0,0 +1,25 @@
|
|||
package {
|
||||
import flash.display.MovieClip;
|
||||
public class Test extends MovieClip {
|
||||
public function Test() {
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
import flash.net.URLVariables;
|
||||
|
||||
var variables:URLVariables = new URLVariables();
|
||||
|
||||
variables.foo = "a";
|
||||
trace(variables);
|
||||
|
||||
variables = new URLVariables();
|
||||
variables.foo = [0,1,2];
|
||||
trace(variables);
|
||||
|
||||
variables = new URLVariables();
|
||||
variables["😭"] = [0,"😭",2];
|
||||
trace(variables);
|
||||
|
||||
|
|
@ -0,0 +1,3 @@
|
|||
foo=a
|
||||
foo=0&foo=1&foo=2
|
||||
%F0%9F%98%AD=0&%F0%9F%98%AD=%F0%9F%98%AD&%F0%9F%98%AD=2
|
Binary file not shown.
Loading…
Reference in New Issue