kopia lustrzana https://github.com/micropython/micropython-lib
urequests: Add timeout, passed to underlying socket if supported.
rodzic
dbd8fff830
commit
a3d6d29b1b
|
@ -34,7 +34,15 @@ class Response:
|
||||||
|
|
||||||
|
|
||||||
def request(
|
def request(
|
||||||
method, url, data=None, json=None, headers={}, stream=None, parse_headers=True, auth=None
|
method,
|
||||||
|
url,
|
||||||
|
data=None,
|
||||||
|
json=None,
|
||||||
|
headers={},
|
||||||
|
stream=None,
|
||||||
|
auth=None,
|
||||||
|
timeout=None,
|
||||||
|
parse_headers=True,
|
||||||
):
|
):
|
||||||
redirect = None # redirection url, None means no redirection
|
redirect = None # redirection url, None means no redirection
|
||||||
chunked_data = data and getattr(data, "__iter__", None) and not getattr(data, "__len__", None)
|
chunked_data = data and getattr(data, "__iter__", None) and not getattr(data, "__len__", None)
|
||||||
|
@ -73,6 +81,12 @@ def request(
|
||||||
resp_d = {}
|
resp_d = {}
|
||||||
|
|
||||||
s = usocket.socket(ai[0], usocket.SOCK_STREAM, ai[2])
|
s = usocket.socket(ai[0], usocket.SOCK_STREAM, ai[2])
|
||||||
|
|
||||||
|
if timeout is not None:
|
||||||
|
# Note: settimeout is not supported on all platforms, will raise
|
||||||
|
# an AttributeError if not available.
|
||||||
|
s.settimeout(timeout)
|
||||||
|
|
||||||
try:
|
try:
|
||||||
s.connect(ai[-1])
|
s.connect(ai[-1])
|
||||||
if proto == "https:":
|
if proto == "https:":
|
||||||
|
|
Ładowanie…
Reference in New Issue