def _execute_api(self, func_name, schema_keys=None, q_params=None, **kwargs): schema_keys = schema_keys or [] q_params = q_params or {} params = self._params_pre_processing(schema_keys, kwargs) self._url.add_dirs(func_name, *params.values()) response = requests.get(self._url.get_absolute_url(), params=q_params) self._url.refresh_dirs() if response.status_code != 200: raise ZaifApiError('return status code is {}'.format(response.status_code)) return json.loads(response.text)
def _execute_api(self, func_name, schema_keys=None, params=None): schema_keys = schema_keys or [] params = params or {} params = self._params_pre_processing(schema_keys, params, func_name) header = self._get_header(params) url = self._url.get_absolute_url() res = get_response(url, params, header) if res['success'] == 0: if res['error'].startswith('nonce'): raise ZaifApiNonceError(res['error']) raise ZaifApiError(res['error']) return res['return']
async def _execute_api(self, func_name, schema_keys=None, params=None): schema_keys = schema_keys or [] params = params or {} _params = self._params_pre_processing(schema_keys, params, func_name) header = self._get_header(_params) url = self._url.get_absolute_url() async with aiohttp.ClientSession(loop=self.loop) as session: res = await self._http_post(session, url, data=params, headers=header) if res['success'] == 0: if res['error'].startswith('nonce'): raise ZaifApiNonceError(res['error']) raise ZaifApiError(res['error']) return res['return']
def _execute_api(self, func_name, schema_keys=None, q_params=None, **kwargs): schema_keys = schema_keys or [] q_params = q_params or {} params = self._params_pre_processing(schema_keys, kwargs) if params.get("page", None): self._url.add_dirs(func_name, params.get("group_id"), params.get("currency_pair"), params.get("page")) else: self._url.add_dirs(func_name, params.get("group_id"), params.get("currency_pair")) response = requests.get(self._url.get_absolute_url(), params=q_params) self._url.refresh_dirs() if response.status_code != 200: raise ZaifApiError("return status code is {}".format( response.status_code)) return json.loads(response.text)