mirror of
https://github.com/kennethreitz/requests.git
synced 2026-06-05 22:50:18 +00:00
Fixed logic for auto redirect in GET and HEAD methods.
This commit is contained in:
@@ -95,6 +95,9 @@ def get(url, **kwargs):
|
||||
:param **kwargs: Optional arguments that ``request`` takes.
|
||||
"""
|
||||
|
||||
if "allow_redirects" not in kwargs:
|
||||
kwargs["allow_redirects"] = True
|
||||
|
||||
return request('get', url, **kwargs)
|
||||
|
||||
|
||||
@@ -105,6 +108,9 @@ def head(url, **kwargs):
|
||||
:param **kwargs: Optional arguments that ``request`` takes.
|
||||
"""
|
||||
|
||||
if "allow_redirects" not in kwargs:
|
||||
kwargs["allow_redirects"] = True
|
||||
|
||||
return request('head', url, **kwargs)
|
||||
|
||||
|
||||
|
||||
+1
-2
@@ -212,8 +212,7 @@ class Request(object):
|
||||
|
||||
while (
|
||||
('location' in r.headers) and
|
||||
((self.method in ('GET', 'HEAD')) or
|
||||
(r.status_code is codes.see_other) or
|
||||
((r.status_code is codes.see_other) or
|
||||
(self.allow_redirects))
|
||||
):
|
||||
|
||||
|
||||
@@ -60,6 +60,13 @@ class RequestsTestSuite(unittest.TestCase):
|
||||
r = requests.get(httpbin('/'))
|
||||
self.assertEqual(r.status_code, 200)
|
||||
|
||||
def test_HTTP_302_ALLOW_REDIRECT_GET(self):
|
||||
r = requests.get(httpbin('redirect', '1'))
|
||||
self.assertEqual(r.status_code, 200)
|
||||
|
||||
def test_HTTP_302_GET(self):
|
||||
r = requests.get(httpbin('redirect', '1'), allow_redirects=False)
|
||||
self.assertEqual(r.status_code, 302)
|
||||
|
||||
def test_HTTPS_200_OK_GET(self):
|
||||
r = requests.get(httpsbin('/'))
|
||||
|
||||
Reference in New Issue
Block a user