Issues 356 - Adding get_data for Api response so it can overrided
parent
352cf3b14e
commit
f43d38dae7
|
@ -20,23 +20,23 @@ class Api(object):
|
|||
method = params.get("method", "GET")
|
||||
headers = self.build_headers(params)
|
||||
json = self.build_json(params)
|
||||
query = params.get("query")
|
||||
query = self.build_query(params)
|
||||
url = self.build_url(params)
|
||||
response = requests.request(method, url, headers=headers, params=query,
|
||||
data=params.get("data"), json=json)
|
||||
return self.get_response(response)
|
||||
|
||||
@staticmethod
|
||||
def get_response(response):
|
||||
try:
|
||||
data = response.json()
|
||||
except:
|
||||
data = response.text
|
||||
|
||||
def get_response(self, response):
|
||||
data = self.get_data(response)
|
||||
if 200 <= response.status_code < 300:
|
||||
return data
|
||||
else:
|
||||
raise HTTPError(data, response=response)
|
||||
raise HTTPError(data, response=response)
|
||||
|
||||
def get_data(self, response):
|
||||
try:
|
||||
return response.json()
|
||||
except:
|
||||
return response.text
|
||||
|
||||
def build_headers(self, params):
|
||||
headers = params.get("headers", {})
|
||||
|
@ -62,6 +62,9 @@ class Api(object):
|
|||
params["json"] = json
|
||||
return json
|
||||
|
||||
def build_query(self, params):
|
||||
return params.get("query")
|
||||
|
||||
def build_url(self, params):
|
||||
path = params.get("path", "")
|
||||
version = params.get("version", self.version)
|
||||
|
|
|
@ -75,9 +75,12 @@ class WAApi(Api):
|
|||
def __init__(self):
|
||||
super(WAApi, self).__init__("wa")
|
||||
|
||||
def get_data(self, response):
|
||||
return response.text
|
||||
|
||||
def query(self, input):
|
||||
response = self.request({"query": {"input": input}})
|
||||
return wolframalpha.Result(StringIO(response.content))
|
||||
data = self.request({"query": {"input": input}})
|
||||
return wolframalpha.Result(StringIO(data))
|
||||
|
||||
|
||||
class WolframAlphaSkill(MycroftSkill):
|
||||
|
|
Loading…
Reference in New Issue