@@ -217,6 +217,13 @@ def _get_proxy_info(hostname, is_secure, **options):
|
|||||||
|
|
||||||
return None, 0, None
|
return None, 0, None
|
||||||
|
|
||||||
|
def _extract_err_message(exception):
|
||||||
|
message = getattr(exception, 'strerror', '')
|
||||||
|
if not message:
|
||||||
|
message = getattr(exception, 'message', '')
|
||||||
|
|
||||||
|
return message
|
||||||
|
|
||||||
|
|
||||||
def create_connection(url, timeout=None, **options):
|
def create_connection(url, timeout=None, **options):
|
||||||
"""
|
"""
|
||||||
@@ -904,11 +911,11 @@ class WebSocket(object):
|
|||||||
try:
|
try:
|
||||||
return self.sock.send(data)
|
return self.sock.send(data)
|
||||||
except socket.timeout as e:
|
except socket.timeout as e:
|
||||||
message = getattr(e, 'strerror', getattr(e, 'message', ''))
|
message = _extract_err_message(e)
|
||||||
raise WebSocketTimeoutException(message)
|
raise WebSocketTimeoutException(message)
|
||||||
except Exception as e:
|
except Exception as e:
|
||||||
message = getattr(e, 'strerror', getattr(e, 'message', ''))
|
message = _extract_err_message(e)
|
||||||
if message and isinstance(message, six.text_type) and "timed out" in message:
|
if message and "timed out" in message:
|
||||||
raise WebSocketTimeoutException(message)
|
raise WebSocketTimeoutException(message)
|
||||||
else:
|
else:
|
||||||
raise
|
raise
|
||||||
@@ -920,10 +927,10 @@ class WebSocket(object):
|
|||||||
try:
|
try:
|
||||||
bytes = self.sock.recv(bufsize)
|
bytes = self.sock.recv(bufsize)
|
||||||
except socket.timeout as e:
|
except socket.timeout as e:
|
||||||
message = getattr(e, 'strerror', getattr(e, 'message', ''))
|
message = _extract_err_message(e)
|
||||||
raise WebSocketTimeoutException(message)
|
raise WebSocketTimeoutException(message)
|
||||||
except SSLError as e:
|
except SSLError as e:
|
||||||
message = getattr(e, 'strerror', getattr(e, 'message', ''))
|
message = _extract_err_message(e)
|
||||||
if message == "The read operation timed out":
|
if message == "The read operation timed out":
|
||||||
raise WebSocketTimeoutException(message)
|
raise WebSocketTimeoutException(message)
|
||||||
else:
|
else:
|
||||||
|
Reference in New Issue
Block a user