0

I am using BaseUrlSession of requests_toolbelt.sessions and provide the required session info. Here is the sample code

from requests_toolbelt.sessions import BaseUrlSession

class ConnectAWS:
   _session: BaseUrlSession
   def __init__(self, url: str, user: str, password: str):
      self._session = BaseUrlSession(base_url=url)
      self._session.headers = HEADERS
      self._session.params = {'api-version': '5.0'}
    
   def get_house_info(self, area_name: str, house_id: int) -> dict:
      endpoint = f"{area_name}/_apis/houseitems/{house_id}"
      response = self._session.get(endpoint)
      response.raise_for_status() 
      return response.json()

I would like to use retry logic for self._session.get(endpoint) using the below code snippet taken from How to implement retry mechanism into python requests library? , can anyone tell me how can I add the retry logic before doing a raise for status()

from requests.adapters import HTTPAdapter, Retry
s = requests.Session()
retries = Retry(total=5, backoff_factor=1, status_forcelist=[ 502, 503, 504 ])
s.mount('http://', HTTPAdapter(max_retries=retries))

s.get("http://httpstat.us/503")
Joe_12345
  • 589
  • 2
  • 7
  • 19

0 Answers0