Skip to content

Commit eba4f37

Browse files
Merge pull request #142 from sendgrid/timeout
Fixes issue 104, timeout via URLError
2 parents 137ceff + ade34b4 commit eba4f37

File tree

1 file changed

+6
-0
lines changed

1 file changed

+6
-0
lines changed

sendgrid/sendgrid.py

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,9 +6,11 @@
66
import urllib.request as urllib_request
77
from urllib.parse import urlencode
88
from urllib.error import HTTPError
9+
from urllib.error import URLError
910
except ImportError: # Python 2
1011
import urllib2 as urllib_request
1112
from urllib2 import HTTPError
13+
from urllib2 import URLError
1214
from urllib import urlencode
1315

1416
from .exceptions import SendGridClientError, SendGridServerError
@@ -121,6 +123,8 @@ def _legacy_send(self, message):
121123
return self._make_request(message)
122124
except HTTPError as e:
123125
return e.code, e.read()
126+
except URLError as e:
127+
return 408, e.reason
124128
except timeout as e:
125129
return 408, e
126130

@@ -134,5 +138,7 @@ def _raising_send(self, message):
134138
raise SendGridServerError(e.code, e.read())
135139
else:
136140
assert False
141+
except URLError as e:
142+
raise SendGridClientError(408, 'Request timeout')
137143
except timeout as e:
138144
raise SendGridClientError(408, 'Request timeout')

0 commit comments

Comments
 (0)