diff --git a/hippo4j-common/src/main/java/cn/hippo4j/common/toolkit/http/HttpUtils.java b/hippo4j-common/src/main/java/cn/hippo4j/common/toolkit/http/HttpUtils.java index acc946d0..ac063e1c 100644 --- a/hippo4j-common/src/main/java/cn/hippo4j/common/toolkit/http/HttpUtils.java +++ b/hippo4j-common/src/main/java/cn/hippo4j/common/toolkit/http/HttpUtils.java @@ -113,6 +113,7 @@ public class HttpUtils { * @param queryString * @return */ + @SneakyThrows public static String buildUrl(String url, Map queryString) { if (null == queryString) { return url; @@ -128,9 +129,11 @@ public class HttpUtils { } else { builder.append("&"); } + String value = URLEncoder.encode(queryString.get(key), Constants.ENCODE) + .replaceAll("\\+", "%20"); builder.append(key) .append("=") - .append(queryString.get(key)); + .append(value); } } return builder.toString(); @@ -212,7 +215,8 @@ public class HttpUtils { @SneakyThrows private static HttpURLConnection createConnection(String url, String method, long timeout) { - HttpURLConnection connection = (HttpURLConnection) new URL(URLEncoder.encode(url)).openConnection(); + HttpURLConnection connection = (HttpURLConnection) new URL(url).openConnection(); + connection.setDoInput(true); connection.setDoOutput(true); connection.setConnectTimeout(Integer.parseInt(String.valueOf(timeout)));