Bläddra i källkod

Empty parameters are now encoded and URL encoding handles empty query string.

Christian Noon 9 år sedan
förälder
incheckning
8b618c766c
1 ändrade filer med 5 tillägg och 4 borttagningar
  1. 5 4
      Source/ParameterEncoding.swift

+ 5 - 4
Source/ParameterEncoding.swift

@@ -82,9 +82,7 @@ public enum ParameterEncoding {
     {
         var mutableURLRequest = URLRequest.URLRequest
 
-        guard let parameters = parameters where !parameters.isEmpty else {
-            return (mutableURLRequest, nil)
-        }
+        guard let parameters = parameters else { return (mutableURLRequest, nil) }
 
         var encodingError: NSError? = nil
 
@@ -118,7 +116,10 @@ public enum ParameterEncoding {
             }
 
             if let method = Method(rawValue: mutableURLRequest.HTTPMethod) where encodesParametersInURL(method) {
-                if let URLComponents = NSURLComponents(URL: mutableURLRequest.URL!, resolvingAgainstBaseURL: false) {
+                if let
+                    URLComponents = NSURLComponents(URL: mutableURLRequest.URL!, resolvingAgainstBaseURL: false)
+                    where !parameters.isEmpty
+                {
                     let percentEncodedQuery = (URLComponents.percentEncodedQuery.map { $0 + "&" } ?? "") + query(parameters)
                     URLComponents.percentEncodedQuery = percentEncodedQuery
                     mutableURLRequest.URL = URLComponents.URL