MCPcopy Create free account
hub / github.com/ccxt/ccxt / handle_errors

Method handle_errors

python/ccxt/async_support/deepcoin.py:2833–2863  ·  view source on GitHub ↗
(self, code: int, reason: str, url: str, method: str, headers: dict, body: str, response, requestHeaders, requestBody)

Source from the content-addressed store, hash-verified

2831 return {'url': url, 'method': method, 'body': body, 'headers': headers}
2832
2833 def handle_errors(self, code: int, reason: str, url: str, method: str, headers: dict, body: str, response, requestHeaders, requestBody):
2834 data = self.safe_dict(response, 'data', {})
2835 msg = self.safe_string(response, 'msg')
2836 messageCode = self.safe_string(response, 'code')
2837 sCode = self.safe_string(data, 'sCode')
2838 sMsg = self.safe_string(data, 'sMsg')
2839 errorCode = self.safe_string(data, 'errorCode')
2840 if (msg is not None) and (msg == '') and (sMsg is not None):
2841 msg = sMsg
2842 errorList = self.safe_list(data, 'errorList')
2843 if errorList is not None:
2844 for i in range(0, len(errorList)):
2845 entry = self.safe_dict(errorList, i, {})
2846 errorCode = self.safe_string(entry, 'errorCode')
2847 feedback = self.id + ' ' + body
2848 if (sCode is None) and (errorCode is not None):
2849 sCode = errorCode
2850 retCode = self.safe_string(data, 'retCode')
2851 if (sCode is None) and (retCode is not None):
2852 sCode = retCode
2853 if (code != 200) or (messageCode != '0') or (sCode is not None and sCode != '0'):
2854 self.throw_exactly_matched_exception(self.exceptions['exact'], messageCode, feedback)
2855 self.throw_exactly_matched_exception(self.exceptions['exact'], sCode, feedback)
2856 self.throw_exactly_matched_exception(self.exceptions['exact'], msg, feedback)
2857 self.throw_broadly_matched_exception(self.exceptions['broad'], msg, feedback)
2858 raise ExchangeError(feedback)
2859 else:
2860 list = self.safe_list(data, 'list', [])
2861 if ('list' in data) and (list is None):
2862 raise NullResponse(feedback)
2863 return None

Callers

nothing calls this directly

Calls 8

ExchangeErrorClass · 0.90
NullResponseClass · 0.90
safe_dictMethod · 0.80
safe_stringMethod · 0.80
safe_listMethod · 0.80
rangeFunction · 0.50

Tested by

no test coverage detected