mirror of https://github.com/python/cpython
Merged revisions 75334 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/branches/py3k ................ r75334 | senthil.kumaran | 2009-10-11 10:28:55 +0530 (Sun, 11 Oct 2009) | 9 lines Merged revisions 75333 via svnmerge from svn+ssh://pythondev@svn.python.org/python/trunk ........ r75333 | senthil.kumaran | 2009-10-11 07:30:07 +0530 (Sun, 11 Oct 2009) | 3 lines Fixed Issue6894, urllib2 doesn't respect "no_proxy" environment ........ ................
This commit is contained in:
parent
290e939f2e
commit
1130163dc1
|
@ -947,6 +947,22 @@ class HandlerTests(unittest.TestCase):
|
||||||
self.assertEqual([(handlers[0], "http_open")],
|
self.assertEqual([(handlers[0], "http_open")],
|
||||||
[tup[0:2] for tup in o.calls])
|
[tup[0:2] for tup in o.calls])
|
||||||
|
|
||||||
|
def test_proxy_no_proxy(self):
|
||||||
|
os.environ['no_proxy'] = 'python.org'
|
||||||
|
o = OpenerDirector()
|
||||||
|
ph = urllib.request.ProxyHandler(dict(http="proxy.example.com"))
|
||||||
|
o.add_handler(ph)
|
||||||
|
req = Request("http://www.perl.org/")
|
||||||
|
self.assertEqual(req.get_host(), "www.perl.org")
|
||||||
|
r = o.open(req)
|
||||||
|
self.assertEqual(req.get_host(), "proxy.example.com")
|
||||||
|
req = Request("http://www.python.org")
|
||||||
|
self.assertEqual(req.get_host(), "www.python.org")
|
||||||
|
r = o.open(req)
|
||||||
|
self.assertEqual(req.get_host(), "www.python.org")
|
||||||
|
del os.environ['no_proxy']
|
||||||
|
|
||||||
|
|
||||||
def test_proxy_https(self):
|
def test_proxy_https(self):
|
||||||
o = OpenerDirector()
|
o = OpenerDirector()
|
||||||
ph = urllib.request.ProxyHandler(dict(https="proxy.example.com:3128"))
|
ph = urllib.request.ProxyHandler(dict(https="proxy.example.com:3128"))
|
||||||
|
|
|
@ -657,6 +657,10 @@ class ProxyHandler(BaseHandler):
|
||||||
proxy_type, user, password, hostport = _parse_proxy(proxy)
|
proxy_type, user, password, hostport = _parse_proxy(proxy)
|
||||||
if proxy_type is None:
|
if proxy_type is None:
|
||||||
proxy_type = orig_type
|
proxy_type = orig_type
|
||||||
|
|
||||||
|
if req.host and proxy_bypass(req.host):
|
||||||
|
return None
|
||||||
|
|
||||||
if user and password:
|
if user and password:
|
||||||
user_pass = '%s:%s' % (unquote(user),
|
user_pass = '%s:%s' % (unquote(user),
|
||||||
unquote(password))
|
unquote(password))
|
||||||
|
|
|
@ -27,6 +27,8 @@ Core and Builtins
|
||||||
Library
|
Library
|
||||||
-------
|
-------
|
||||||
|
|
||||||
|
- Issue #6894: Fixed the issue urllib2 doesn't respect "no_proxy" environment
|
||||||
|
|
||||||
- Issue #7082: When falling back to the MIME 'name' parameter, the
|
- Issue #7082: When falling back to the MIME 'name' parameter, the
|
||||||
correct place to look for it is the Content-Type header.
|
correct place to look for it is the Content-Type header.
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue