三方接口处理问题

This commit is contained in:
曹前明 2022-10-03 14:11:35 +08:00
parent e89e4dc180
commit f7b8186e55
3 changed files with 14 additions and 19 deletions

View File

@ -95,8 +95,9 @@ class DhClient:
return 'fail', err_detail return 'fail', err_detail
# self.handle_log(result='success', response=ret) # 成功的日志就不记录了 # self.handle_log(result='success', response=ret) # 成功的日志就不记录了
return 'success', ret['data'] if 'data' in ret else None return 'success', ret['data'] if 'data' in ret else None
else:
self.handle_log(result='error', errors=traceback.format_exc()) ret = r.text
self.handle_log(result='error', response=ret)
if raise_exception: if raise_exception:
raise APIException(**DH_REQUEST_ERROR) raise APIException(**DH_REQUEST_ERROR)
return 'error', DH_REQUEST_ERROR return 'error', DH_REQUEST_ERROR

View File

@ -89,7 +89,9 @@ class SpClient:
return 'fail', err_detail return 'fail', err_detail
# self.handle_log(result='success', response=ret) # self.handle_log(result='success', response=ret)
return 'success', ret return 'success', ret
self.handle_log(result='error', errors=traceback.format_exc()) else:
ret = r.text
self.handle_log(result='error', response=ret)
if raise_exception: if raise_exception:
raise APIException(**SP_REQUEST_ERROR) raise APIException(**SP_REQUEST_ERROR)
return 'error', SP_REQUEST_ERROR return 'error', SP_REQUEST_ERROR

View File

@ -35,26 +35,18 @@ class XxClient:
def _get_token_loop(self): def _get_token_loop(self):
while self.isRuning: while self.isRuning:
self.isGetingToken = True self._get_token()
json = {
'licence': self.licence
}
is_ok, res = self.request(**xxapis['token_login'], json=json, raise_exception=False)
if is_ok == 'success':
self.token = res['token']
self.isGetingToken = False
time.sleep(1200) time.sleep(1200)
def get_token(self): def _get_token(self):
self.isGetingToken = True self.isGetingToken = True
json = { json = {
'licence': self.licence 'licence': self.licence
} }
r = requests.post(json=json, url=settings.XX_BASE_URL + '/getAccessTokenV2', verify=False, timeout=120) is_ok, res = self.request(**xxapis['token_login'], json=json, raise_exception=False)
ret = r.json() if is_ok == 'success':
if ret.get('errorCode', 1) == 0: self.token = res['token']
self.isGetingToken = False self.isGetingToken = False
self.token = ret['data']['token']
def setup(self): def setup(self):
self.t = Thread(target=self._get_token_loop, args=(), daemon=True) self.t = Thread(target=self._get_token_loop, args=(), daemon=True)
@ -92,7 +84,7 @@ class XxClient:
# print_roundtrip(r) # print_roundtrip(r)
ret = r.json() ret = r.json()
if ret.get('errorCode') in ['1060000', 1060000]: if ret.get('errorCode') in ['1060000', 1060000]:
self.get_token() # 重新获取token self._get_token() # 重新获取token
self.request(url, method, params, json, timeout, raise_exception) # 重新请求 self.request(url, method, params, json, timeout, raise_exception) # 重新请求
else: else:
if ret['errorCode'] != 0: if ret['errorCode'] != 0:
@ -104,7 +96,7 @@ class XxClient:
return 'fail', err_detail return 'fail', err_detail
# self.handle_log(result='success', response=ret) # self.handle_log(result='success', response=ret)
return 'success', ret['data'] return 'success', ret['data']
self.handle_log(result='error', errors=traceback.format_exc()) self.handle_log(result='error', response=ret)
if raise_exception: if raise_exception:
raise APIException(**XX_REQUEST_ERROR) raise APIException(**XX_REQUEST_ERROR)
return 'error', XX_REQUEST_ERROR return 'error', XX_REQUEST_ERROR