From 7d217bf9bd0689318baff96bf0d11f5f3ddc15e1 Mon Sep 17 00:00:00 2001 From: Jamu Kakar Date: Thu, 21 Mar 2013 17:55:08 -0700 Subject: [PATCH] - Pull credentials out of the URL when possible. --- requests/models.py | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/requests/models.py b/requests/models.py index 3d27d0c..d83562a 100644 --- a/requests/models.py +++ b/requests/models.py @@ -20,7 +20,7 @@ from .cookies import cookiejar_from_dict, get_cookie_header from .packages.urllib3.filepost import encode_multipart_formdata from .exceptions import HTTPError, RequestException, MissingSchema, InvalidURL from .utils import ( - stream_untransfer, guess_filename, requote_uri, + stream_untransfer, guess_filename, get_auth_from_url, requote_uri, stream_decode_response_unicode, to_key_val_list, parse_header_links, iter_slices, guess_json_utf, super_len) from .compat import ( @@ -222,6 +222,10 @@ class Request(RequestHooksMixin): p.prepare_body(self.data, self.files) # Note that prepare_auth must be last to enable authentication schemes # such as OAuth to work on a fully prepared request. + if self.auth is None: + auth = get_auth_from_url(self.url) + if auth[0] is not None and auth[1] is not None: + self.auth = auth p.prepare_auth(self.auth) # This MUST go after prepare_auth. Authenticators could add a hook p.prepare_hooks(self.hooks) -- 2.7.4