         return str
     }
     
-    public class func asParams(params: Dictionary<String, AnyObject>) -> NSData {
-        return asParamsStr(params).dataUsingEncoding(NSUTF8StringEncoding)!
+    public class func asParams(params: Dictionary<String, AnyObject>, arrayEncodingStrategy: ArrayEncodingStrategy = ArrayEncodingStrategy.MultiParam) -> NSData {
+        return asParamsStr(params, arrayEncodingStrategy: arrayEncodingStrategy).dataUsingEncoding(NSUTF8StringEncoding)!
     }
     
     public class func delete(url:String, body: NSData = emptyBody, headers: Dictionary<String, AnyObject> = [:]) -> Future<RequestResponse> {

    
}

public enum RequestMethod : String {
    
    case POST = "POST"

        }
    }

    public class func asParamsStr(params: Dictionary<String, AnyObject>, arrayEncodingStrategy: ArrayEncodingStrategy = ArrayEncodingStrategy.MultiParam) -> String {
        var pairs:[String] = []
        for (key, value) in params {
            if let v = value as? Dictionary<String, AnyObject> {
