use geturl to lower scheme
authordaftshady <daftonshady@gmail.com>
Tue, 19 Nov 2013 10:54:46 +0000 (19:54 +0900)
committerdaftshady <daftonshady@gmail.com>
Tue, 19 Nov 2013 10:54:46 +0000 (19:54 +0900)
requests/adapters.py
requests/sessions.py

index 5a99a67..e065c75 100644 (file)
@@ -14,7 +14,7 @@ from .models import Response
 from .packages.urllib3.poolmanager import PoolManager, proxy_from_url
 from .packages.urllib3.response import HTTPResponse
 from .packages.urllib3.util import Timeout as TimeoutSauce
-from .compat import urlparse, basestring, urldefrag, unquote, urlunparse
+from .compat import urlparse, basestring, urldefrag, unquote
 from .utils import (DEFAULT_CA_BUNDLE_PATH, get_encoding_from_headers,
                     except_on_missing_scheme, get_auth_from_url)
 from .structures import CaseInsensitiveDict
@@ -208,9 +208,7 @@ class HTTPAdapter(BaseAdapter):
         else:
             # Only scheme should be lower case
             parsed = urlparse(url)
-            parsed = (parsed.scheme, parsed.netloc, parsed.path,
-                    parsed.params, parsed.query, parsed.fragment)
-            url = urlunparse(parsed)
+            url = parsed.geturl()
             conn = self.poolmanager.connection_from_url(url)
 
         return conn
index 768a180..8aff591 100644 (file)
@@ -12,7 +12,7 @@ import os
 from collections import Mapping
 from datetime import datetime
 
-from .compat import cookielib, OrderedDict, urljoin, urlparse, urlunparse, builtin_str
+from .compat import cookielib, OrderedDict, urljoin, urlparse, builtin_str
 from .cookies import cookiejar_from_dict, extract_cookies_to_jar, RequestsCookieJar
 from .models import Request, PreparedRequest
 from .hooks import default_hooks, dispatch_hook
@@ -94,9 +94,7 @@ class SessionRedirectMixin(object):
 
             # The scheme should be lower case...
             parsed = urlparse(url)
-            parsed = (parsed.scheme, parsed.netloc, parsed.path,
-                      parsed.params, parsed.query, parsed.fragment)
-            url = urlunparse(parsed)
+            url = parsed.geturl()
 
             # Facilitate non-RFC2616-compliant 'location' headers
             # (e.g. '/path/to/resource' instead of 'http://domain.tld/path/to/resource')