get request with params
This commit is contained in:
@@ -13,11 +13,12 @@ class BaseLoader<T> implements ILoader<T> {
|
|||||||
private static inline var TAG:String = "Loader";
|
private static inline var TAG:String = "Loader";
|
||||||
|
|
||||||
public static var urlProcessors(default, null):Array<String->String> = new Array<String->String>();
|
public static var urlProcessors(default, null):Array<String->String> = new Array<String->String>();
|
||||||
public static function prepareUrl(url:String):String { for (p in urlProcessors) url = p(url); return url; };
|
public static function prepareUrl(url:String):String { for (p in urlProcessors) url = p(url); return url; }
|
||||||
|
|
||||||
|
|
||||||
public var busy(default, null):Bool;
|
public var busy(default, null):Bool;
|
||||||
private var url:String;
|
private var url:String;
|
||||||
|
private var method:Method;
|
||||||
private var data:Null<Dynamic>;
|
private var data:Null<Dynamic>;
|
||||||
private var callback:ICallback<T>;
|
private var callback:ICallback<T>;
|
||||||
|
|
||||||
@@ -29,6 +30,7 @@ class BaseLoader<T> implements ILoader<T> {
|
|||||||
if (busy) throw "Busy";
|
if (busy) throw "Busy";
|
||||||
busy = true;
|
busy = true;
|
||||||
this.url = url;
|
this.url = url;
|
||||||
|
this.method = method;
|
||||||
this.data = data;
|
this.data = data;
|
||||||
callback = new Callback<T>();
|
callback = new Callback<T>();
|
||||||
var url:String = this.url;
|
var url:String = this.url;
|
||||||
@@ -95,7 +97,15 @@ class BaseLoader<T> implements ILoader<T> {
|
|||||||
}
|
}
|
||||||
|
|
||||||
public function run():Void {
|
public function run():Void {
|
||||||
internalRequest(prepareUrl(url));
|
var u:String = url;
|
||||||
|
if (data != null && method == Method.GET) {
|
||||||
|
var a:Array<String> = [];
|
||||||
|
for (key in Reflect.fields(data)) {
|
||||||
|
a.push(key + "=" + Reflect.field(data, key));
|
||||||
|
}
|
||||||
|
u += "?" + a.join("&");
|
||||||
|
}
|
||||||
|
internalRequest(prepareUrl(u));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -1,5 +1,6 @@
|
|||||||
package haxework.net;
|
package haxework.net;
|
||||||
|
|
||||||
|
import haxework.net.ILoader.Method;
|
||||||
import flash.net.URLLoaderDataFormat;
|
import flash.net.URLLoaderDataFormat;
|
||||||
import flash.events.SecurityErrorEvent;
|
import flash.events.SecurityErrorEvent;
|
||||||
import flash.events.IOErrorEvent;
|
import flash.events.IOErrorEvent;
|
||||||
@@ -20,7 +21,6 @@ class BaseURLLoader<T> extends BaseLoader<T> {
|
|||||||
override private function internalRequest(url:String):Void {
|
override private function internalRequest(url:String):Void {
|
||||||
loader = buildLoader();
|
loader = buildLoader();
|
||||||
var request:URLRequest = new URLRequest(url);
|
var request:URLRequest = new URLRequest(url);
|
||||||
if (data != null) request.data = data;
|
|
||||||
loader.load(request);
|
loader.load(request);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user