Message341412
Today, proxy.pconline.com.cn resolves to a local (inaccessible) address for me (192.168.11.254). After changing the proxy address to localhost, and testing with Python 2.6.8, I can’t see any evidence of a bug in Python. Winsock error 10053 is WSAECONNABORTED, which apparently can be triggered after a lower-level protocol failure or timeout. So this could be the fault of the proxy, network, or a firewall. I am closing this, assuming nobody else can to reproduce this fifteen years later.
The closest I got is the following HTTP seen at the proxy:
>>> [conn, address] = listener.accept()
>>> pprint(conn.recv(3000).splitlines(keepends=True))
[b'GET http://192.168.10.177:8080/price/login.do?method=list HTTP/1.1\r\n',
b'Accept-Encoding: identity\r\n',
b'Host: 192.168.10.177:8080\r\n',
b'Proxy-Authorization: Basic cGljOmlMdXNhbHQ=\r\n',
b'Connection: close\r\n',
b'User-Agent: Python-urllib/2.6\r\n',
b'\r\n']
>>> conn.sendall(b'HTTP/1.1 200 Okay\r\nContent-Length: 0\r\n\r\n')
>>> conn.close()
>>> [conn, address] = listener.accept()
>>> pprint(conn.recv(3000).splitlines(keepends=True))
[b'POST http://192.168.10.177:8080/price/login.do?method=login HTTP/1.1\r\n',
b'Accept-Encoding: identity\r\n',
b'Content-Length: 27\r\n',
b'Host: 192.168.10.177:8080\r\n',
b'User-Agent: Python-urllib/2.6\r\n',
b'Connection: close\r\n',
b'Proxy-Authorization: Basic cGljOmlMdXNhbHQ=\r\n',
b'Content-Type: application/x-www-form-urlencoded\r\n',
b'\r\n',
b'password=admin&userId=admin']
If I close the proxy’s listener before sending the first response, this causes ECONNREFUSED for the second request, with a similar back trace:
$ python2.6 t.py
Traceback (most recent call last):
File "t.py", line 13, in <module>
response = urllib2.urlopen(request, postdata)
File "/usr/lib/python2.6/urllib2.py", line 126, in urlopen
return _opener.open(url, data, timeout)
File "/usr/lib/python2.6/urllib2.py", line 391, in open
response = self._open(req, data)
File "/usr/lib/python2.6/urllib2.py", line 409, in _open
'_open', req)
File "/usr/lib/python2.6/urllib2.py", line 369, in _call_chain
result = func(*args)
File "/usr/lib/python2.6/urllib2.py", line 1181, in http_open
return self.do_open(httplib.HTTPConnection, req)
File "/usr/lib/python2.6/urllib2.py", line 1156, in do_open
raise URLError(err)
urllib2.URLError: <urlopen error [Errno 111] Connection refused> |
|
Date |
User |
Action |
Args |
2019-05-05 00:51:37 | martin.panter | set | recipients:
+ martin.panter, jjlee, orsenthil, xhchen111 |
2019-05-05 00:51:37 | martin.panter | set | messageid: <1557017497.61.0.968101993537.issue1160328@roundup.psfhosted.org> |
2019-05-05 00:51:37 | martin.panter | link | issue1160328 messages |
2019-05-05 00:51:36 | martin.panter | create | |
|