瀏覽代碼

修复url不支持空格间隔

drake 4 年之前
父節點
當前提交
35d02e2be6

+ 5 - 5
kalle/src/main/java/com/yanzhenjie/kalle/Url.java

@@ -201,7 +201,7 @@ public class Url {
         URI newUri = URI.create(location);
         if (location.startsWith("/")) {
             return builder().setPath(newUri.getPath())
-                    .setQuery(newUri.getQuery())
+                    .setQuery(newUri.getRawQuery())
                     .setFragment(newUri.getFragment())
                     .build();
         } else if (location.contains("../")) {
@@ -216,15 +216,15 @@ public class Url {
                 oldPathList = oldPathList.subList(0, oldPathList.size() - start - 2);
                 oldPathList.addAll(newPathList);
                 String path = TextUtils.join("/", oldPathList);
-                return builder().setPath(path).setQuery(newUri.getQuery()).setFragment(newUri.getFragment()).build();
+                return builder().setPath(path).setQuery(newUri.getRawQuery()).setFragment(newUri.getFragment()).build();
             }
 
             String path = TextUtils.join("/", newPathList);
 
-            return builder().setPath(path).setQuery(newUri.getQuery()).setFragment(newUri.getFragment()).build();
+            return builder().setPath(path).setQuery(newUri.getRawQuery()).setFragment(newUri.getFragment()).build();
         } else {
             String path = (getPath() + newUri.getPath()).replace("//", "/");
-            return builder().setPath(path).setQuery(newUri.getQuery()).setFragment(newUri.getFragment()).build();
+            return builder().setPath(path).setQuery(newUri.getRawQuery()).setFragment(newUri.getFragment()).build();
         }
     }
 
@@ -244,7 +244,7 @@ public class Url {
             this.mHost = uri.getHost();
             this.mPort = convertPort(uri.getPort());
             this.mPath = uri.getPath();
-            this.mQuery = convertQuery(uri.getQuery()).builder();
+            this.mQuery = convertQuery(uri.getRawQuery()).builder();
             this.mFragment = uri.getFragment();
         }
 

+ 1 - 1
kalle/src/main/java/com/yanzhenjie/kalle/urlconnect/URLConnectionFactory.java

@@ -55,7 +55,7 @@ public class URLConnectionFactory implements ConnectFactory {
     @Override
     public Connection connect(Request request) throws IOException {
         HttpURLConnection connection;
-        URL url = new URL(request.url().toString(true));
+        URL url = new URL(request.url().toString(false));
 
         Proxy proxy = request.proxy();
         if (proxy == null)