* Timeout for external API calls
This commit is contained in:
parent
3110017949
commit
d0ae3dc0d7
|
|
@ -104,7 +104,7 @@ class CDEKClient:
|
||||||
retries += 1
|
retries += 1
|
||||||
prepared = self.session.prepare_request(request)
|
prepared = self.session.prepare_request(request)
|
||||||
try:
|
try:
|
||||||
r = self.session.send(prepared)
|
r = self.session.send(prepared, timeout=settings.EXTERNAL_API_TIMEOUT_SEC)
|
||||||
except:
|
except:
|
||||||
continue
|
continue
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -27,7 +27,7 @@ class CurrencyAPIClient:
|
||||||
while retries < self.MAX_RETRIES:
|
while retries < self.MAX_RETRIES:
|
||||||
retries += 1
|
retries += 1
|
||||||
prepared = self.session.prepare_request(request)
|
prepared = self.session.prepare_request(request)
|
||||||
r = self.session.send(prepared)
|
r = self.session.send(prepared, timeout=settings.EXTERNAL_API_TIMEOUT_SEC)
|
||||||
|
|
||||||
# TODO: handle/log errors
|
# TODO: handle/log errors
|
||||||
return r
|
return r
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,7 @@
|
||||||
from urllib3.util import parse_url
|
from urllib3.util import parse_url
|
||||||
from urllib.parse import urljoin, parse_qs
|
from urllib.parse import urljoin, parse_qs
|
||||||
|
|
||||||
|
from django.conf import settings
|
||||||
import requests
|
import requests
|
||||||
|
|
||||||
|
|
||||||
|
|
@ -25,7 +26,7 @@ class PoizonClient:
|
||||||
while retries < self.MAX_RETRIES:
|
while retries < self.MAX_RETRIES:
|
||||||
retries += 1
|
retries += 1
|
||||||
prepared = self.session.prepare_request(request)
|
prepared = self.session.prepare_request(request)
|
||||||
r = self.session.send(prepared)
|
r = self.session.send(prepared, timeout=settings.EXTERNAL_API_TIMEOUT_SEC)
|
||||||
|
|
||||||
# TODO: handle/log errors
|
# TODO: handle/log errors
|
||||||
return r
|
return r
|
||||||
|
|
|
||||||
|
|
@ -24,6 +24,7 @@ BASE_DIR = Path(__file__).resolve().parent.parent
|
||||||
# SECURITY WARNING: keep the secret key used in production secret!
|
# SECURITY WARNING: keep the secret key used in production secret!
|
||||||
SECRET_KEY = '***REMOVED***'
|
SECRET_KEY = '***REMOVED***'
|
||||||
|
|
||||||
|
# External API settings
|
||||||
CDEK_CLIENT_ID = '***REMOVED***'
|
CDEK_CLIENT_ID = '***REMOVED***'
|
||||||
CDEK_CLIENT_SECRET = '***REMOVED***'
|
CDEK_CLIENT_SECRET = '***REMOVED***'
|
||||||
|
|
||||||
|
|
@ -31,6 +32,8 @@ POIZON_TOKEN = '***REMOVED***'
|
||||||
|
|
||||||
CURRENCY_GETGEOIP_API_KEY = '***REMOVED***'
|
CURRENCY_GETGEOIP_API_KEY = '***REMOVED***'
|
||||||
|
|
||||||
|
EXTERNAL_API_TIMEOUT_SEC = 60
|
||||||
|
|
||||||
# SECURITY WARNING: don't run with debug turned on in production!
|
# SECURITY WARNING: don't run with debug turned on in production!
|
||||||
DEBUG = bool(int(os.environ.get("DJANGO_DEBUG") or 0))
|
DEBUG = bool(int(os.environ.get("DJANGO_DEBUG") or 0))
|
||||||
DISABLE_PERMISSIONS = False
|
DISABLE_PERMISSIONS = False
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue
Block a user