mirror of
https://github.com/kennethreitz/requests.git
synced 2026-06-05 22:50:18 +00:00
Merge pull request #1637 from Lukasa/redir
Correctly lowercase a redirect scheme.
This commit is contained in:
@@ -12,7 +12,7 @@ import os
|
||||
from collections import Mapping
|
||||
from datetime import datetime
|
||||
|
||||
from .compat import cookielib, OrderedDict, urljoin, urlparse
|
||||
from .compat import cookielib, OrderedDict, urljoin, urlparse, urlunparse
|
||||
from .cookies import cookiejar_from_dict, extract_cookies_to_jar, RequestsCookieJar
|
||||
from .models import Request, PreparedRequest
|
||||
from .hooks import default_hooks, dispatch_hook
|
||||
@@ -93,9 +93,10 @@ class SessionRedirectMixin(object):
|
||||
url = '%s:%s' % (parsed_rurl.scheme, url)
|
||||
|
||||
# The scheme should be lower case...
|
||||
if '://' in url:
|
||||
scheme, uri = url.split('://', 1)
|
||||
url = '%s://%s' % (scheme.lower(), uri)
|
||||
parsed = urlparse(url)
|
||||
parsed = (parsed.scheme.lower(), parsed.netloc, parsed.path,
|
||||
parsed.params, parsed.query, parsed.fragment)
|
||||
url = urlunparse(parsed)
|
||||
|
||||
# Facilitate non-RFC2616-compliant 'location' headers
|
||||
# (e.g. '/path/to/resource' instead of 'http://domain.tld/path/to/resource')
|
||||
|
||||
Reference in New Issue
Block a user