Refactor _graphql
away
This commit is contained in:
@@ -166,6 +166,7 @@ class Client(object):
|
|||||||
timeout=30,
|
timeout=30,
|
||||||
fix_request=False,
|
fix_request=False,
|
||||||
as_json=False,
|
as_json=False,
|
||||||
|
as_graphql=False,
|
||||||
error_retries=3,
|
error_retries=3,
|
||||||
):
|
):
|
||||||
payload = self._generatePayload(query)
|
payload = self._generatePayload(query)
|
||||||
@@ -179,6 +180,10 @@ class Client(object):
|
|||||||
if not fix_request:
|
if not fix_request:
|
||||||
return r
|
return r
|
||||||
try:
|
try:
|
||||||
|
if as_graphql:
|
||||||
|
content = check_request(r, as_json=False)
|
||||||
|
return graphql_response_to_json(content)
|
||||||
|
else:
|
||||||
return check_request(r, as_json=as_json)
|
return check_request(r, as_json=as_json)
|
||||||
except FBchatFacebookError as e:
|
except FBchatFacebookError as e:
|
||||||
if error_retries > 0 and self._fix_fb_errors(e.fb_error_code):
|
if error_retries > 0 and self._fix_fb_errors(e.fb_error_code):
|
||||||
@@ -188,21 +193,11 @@ class Client(object):
|
|||||||
timeout=timeout,
|
timeout=timeout,
|
||||||
fix_request=fix_request,
|
fix_request=fix_request,
|
||||||
as_json=as_json,
|
as_json=as_json,
|
||||||
|
as_graphql=as_graphql,
|
||||||
error_retries=error_retries - 1,
|
error_retries=error_retries - 1,
|
||||||
)
|
)
|
||||||
raise e
|
raise e
|
||||||
|
|
||||||
def _graphql(self, payload, error_retries=3):
|
|
||||||
content = self._post(
|
|
||||||
self.req_url.GRAPHQL, payload, fix_request=True, as_json=False
|
|
||||||
)
|
|
||||||
try:
|
|
||||||
return graphql_response_to_json(content)
|
|
||||||
except FBchatFacebookError as e:
|
|
||||||
if error_retries > 0 and self._fix_fb_errors(e.fb_error_code):
|
|
||||||
return self._graphql(payload, error_retries=error_retries - 1)
|
|
||||||
raise e
|
|
||||||
|
|
||||||
def _cleanGet(self, url, query=None, timeout=30, allow_redirects=True):
|
def _cleanGet(self, url, query=None, timeout=30, allow_redirects=True):
|
||||||
return self._session.get(
|
return self._session.get(
|
||||||
url,
|
url,
|
||||||
@@ -274,12 +269,13 @@ class Client(object):
|
|||||||
"""
|
"""
|
||||||
|
|
||||||
return tuple(
|
return tuple(
|
||||||
self._graphql(
|
self._post(
|
||||||
{
|
{
|
||||||
"method": "GET",
|
"method": "GET",
|
||||||
"response_format": "json",
|
"response_format": "json",
|
||||||
"queries": graphql_queries_to_json(*queries),
|
"queries": graphql_queries_to_json(*queries),
|
||||||
}
|
},
|
||||||
|
as_graphql=True,
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user