Skip to content

Commit b3e15c3

Browse files
committed
Using standardised way of encoding URLs, Closing android-async-http#691
1 parent 75c34f9 commit b3e15c3

File tree

1 file changed

+10
-2
lines changed

1 file changed

+10
-2
lines changed

library/src/main/java/com/loopj/android/http/AsyncHttpClient.java

Lines changed: 10 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -73,8 +73,10 @@
7373
import java.io.InputStream;
7474
import java.io.OutputStream;
7575
import java.io.PushbackInputStream;
76+
import java.io.UnsupportedEncodingException;
7677
import java.lang.reflect.Field;
7778
import java.net.URI;
79+
import java.net.URLEncoder;
7880
import java.util.Collections;
7981
import java.util.HashMap;
8082
import java.util.Iterator;
@@ -1225,8 +1227,14 @@ public static String getUrlWithQueryString(boolean shouldEncodeUrl, String url,
12251227
if (url == null)
12261228
return null;
12271229

1228-
if (shouldEncodeUrl)
1229-
url = url.replace(" ", "%20");
1230+
if (shouldEncodeUrl) {
1231+
try {
1232+
url = URLEncoder.encode(url, "UTF-8");
1233+
} catch (UnsupportedEncodingException e) {
1234+
// Should not really happen, added just for sake of validity
1235+
Log.e(LOG_TAG, "getUrlWithQueryString encoding URL", e);
1236+
}
1237+
}
12301238

12311239
if (params != null) {
12321240
// Construct the query string and trim it, in case it

0 commit comments

Comments
 (0)