From 0bb8be0e5ba58dfff9648b4058acaa927837e605 Mon Sep 17 00:00:00 2001 From: Ian Cordasco Date: Mon, 7 Oct 2013 21:43:21 -0500 Subject: [PATCH] Parse cookies when users set custom Host header --- requests/cookies.py | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/requests/cookies.py b/requests/cookies.py index f3ac64f0..4d1708d4 100644 --- a/requests/cookies.py +++ b/requests/cookies.py @@ -8,7 +8,7 @@ requests.utils imports from here, so be careful with imports. import time import collections -from .compat import cookielib, urlparse, Morsel +from .compat import cookielib, urlparse, urlunparse, Morsel try: import threading @@ -45,7 +45,14 @@ class MockRequest(object): return self.get_host() def get_full_url(self): - return self._r.url + if not self._r.headers.get('Host'): + return self._r.url + host = self._r.headers['Host'] + parsed = urlparse(self._r.url) + return urlunparse([ + parsed.scheme, host, parsed.path, parsed.params, parsed.query, + parsed.fragment + ]) def is_unverifiable(self): return True