parse-params public #49

Merged
merged 4 commits into from Mar 22, 2012
+12 −10
Viewing a subset of changes. View all

form-decode: encoding defaults to "UTF-8"

commit e2d030da554e7db68128b73deedc79c38bd5275f Giacomo Ritucci committed Jan 15, 2012
View
22 ring-core/src/ring/util/codec.clj
@@ -42,16 +42,18 @@
(defn form-decode
"Parse parameters from a string into a map."
- [^String param-string encoding]
- (reduce
- (fn [param-map encoded-param]
- (if-let [[_ key val] (re-matches #"([^=]+)=(.*)" encoded-param)]
- (assoc-param param-map
- (url-decode key encoding)
- (url-decode (or val "") encoding))
- param-map))
- {}
- (string/split param-string #"&")))
+ ([^String param-string]
+ (form-decode param-string "UTF-8"))
+ ([^String param-string encoding]
+ (reduce
+ (fn [param-map encoded-param]
+ (if-let [[_ key val] (re-matches #"([^=]+)=(.*)" encoded-param)]
+ (assoc-param param-map
+ (url-decode key encoding)
+ (url-decode (or val "") encoding))
+ param-map))
+ {}
+ (string/split param-string #"&"))))
(defn form-encode
"Encode parameters from a map into a string."