19
19
import java .io .IOException ;
20
20
import java .io .InputStream ;
21
21
import java .io .InputStreamReader ;
22
+ import java .io .UnsupportedEncodingException ;
22
23
import java .net .URL ;
24
+ import java .net .URLEncoder ;
23
25
import java .util .HashMap ;
24
26
import java .util .Iterator ;
25
27
import java .util .Map ;
@@ -95,7 +97,8 @@ public HttpResponse execute() throws IOException {
95
97
return new HttpResponse (responseCode , body );
96
98
}
97
99
98
- private String createUrlWithParams (String url , Map <String , String > queryParams ) {
100
+ private String createUrlWithParams (String url , Map <String , String > queryParams )
101
+ throws UnsupportedEncodingException {
99
102
String queryParamsString = createParamsString (queryParams );
100
103
101
104
if (queryParamsString .isEmpty ()) {
@@ -112,16 +115,22 @@ private String createUrlWithParams(String url, Map<String, String> queryParams)
112
115
}
113
116
}
114
117
115
- private String createParamsString (Map <String , String > queryParams ) {
118
+ private String createParamsString (Map <String , String > queryParams )
119
+ throws UnsupportedEncodingException {
116
120
StringBuilder paramsString = new StringBuilder ();
117
121
Iterator <Map .Entry <String , String >> iterator = queryParams .entrySet ().iterator ();
118
- Map .Entry <String , String > entry = (Map .Entry <String , String >) iterator .next ();
119
-
120
- paramsString .append (entry .getKey () + "=" + (entry .getValue () != null ? entry .getValue () : "" ));
122
+ Map .Entry <String , String > entry = iterator .next ();
123
+ paramsString
124
+ .append (entry .getKey ())
125
+ .append ("=" )
126
+ .append (entry .getValue () != null ? URLEncoder .encode (entry .getValue (), "UTF-8" ) : "" );
121
127
while (iterator .hasNext ()) {
122
- entry = (Map .Entry <String , String >) iterator .next ();
123
- paramsString .append (
124
- "&" + entry .getKey () + "=" + (entry .getValue () != null ? entry .getValue () : "" ));
128
+ entry = iterator .next ();
129
+ paramsString
130
+ .append ("&" )
131
+ .append (entry .getKey ())
132
+ .append ("=" )
133
+ .append (entry .getValue () != null ? URLEncoder .encode (entry .getValue (), "UTF-8" ) : "" );
125
134
}
126
135
return paramsString .toString ();
127
136
}
0 commit comments