mirror of
https://github.com/Telecominfraproject/wlan-lanforge-scripts.git
synced 2025-11-02 19:58:03 +00:00
LFRequest.py: introduces return parameter for fetching resulting JSON data
This commit is contained in:
@@ -99,7 +99,7 @@ class LFRequest:
|
|||||||
|
|
||||||
return None
|
return None
|
||||||
|
|
||||||
def jsonPost(self, show_error=True, debug=False, die_on_error_=False):
|
def jsonPost(self, show_error=True, debug=False, die_on_error_=False, response_json_list_=None):
|
||||||
if (debug == False) and (self.debug == True):
|
if (debug == False) and (self.debug == True):
|
||||||
debug = True
|
debug = True
|
||||||
responses = []
|
responses = []
|
||||||
@@ -114,11 +114,28 @@ class LFRequest:
|
|||||||
request.headers['Content-type'] = 'application/json'
|
request.headers['Content-type'] = 'application/json'
|
||||||
try:
|
try:
|
||||||
resp = urllib.request.urlopen(request)
|
resp = urllib.request.urlopen(request)
|
||||||
|
resp_data = resp.read().decode('utf-8')
|
||||||
|
if (debug):
|
||||||
|
print("----- LFRequest::jsonPost:118 debug: --------------------------------------------")
|
||||||
|
print("URL: %s :%d "% (self.requested_url, resp.status))
|
||||||
|
LFUtils.debug_printer.pprint(resp.getheaders())
|
||||||
|
print("----- resp_data -------------------------------------------------")
|
||||||
|
print(resp_data)
|
||||||
|
print("-------------------------------------------------")
|
||||||
responses.append(resp)
|
responses.append(resp)
|
||||||
|
if response_json_list_ is not None:
|
||||||
|
if type(response_json_list_) is not list:
|
||||||
|
raise ValueError("reponse_json_list_ needs to be type list")
|
||||||
|
j = json.loads(resp_data)
|
||||||
|
if debug:
|
||||||
|
print("----- LFRequest::jsonPost:129 debug: --------------------------------------------")
|
||||||
|
LFUtils.debug_printer.pprint(j)
|
||||||
|
print("-------------------------------------------------")
|
||||||
|
response_json_list_.append(j)
|
||||||
return responses[0]
|
return responses[0]
|
||||||
except urllib.error.HTTPError as error:
|
except urllib.error.HTTPError as error:
|
||||||
if show_error:
|
if show_error:
|
||||||
print("----- LFRequest::jsonPost:116 HTTPError: --------------------------------------------")
|
print("----- LFRequest::jsonPost:138 HTTPError: --------------------------------------------")
|
||||||
print("<%s> HTTP %s: %s"%(request.get_full_url(), error.code, error.reason, ))
|
print("<%s> HTTP %s: %s"%(request.get_full_url(), error.code, error.reason, ))
|
||||||
|
|
||||||
print("Error: ", sys.exc_info()[0])
|
print("Error: ", sys.exc_info()[0])
|
||||||
@@ -142,7 +159,7 @@ class LFRequest:
|
|||||||
exit(1)
|
exit(1)
|
||||||
except urllib.error.URLError as uerror:
|
except urllib.error.URLError as uerror:
|
||||||
if show_error:
|
if show_error:
|
||||||
print("----- LFRequest::jsonPost:138 URLError: ---------------------------------------------")
|
print("----- LFRequest::jsonPost:162 URLError: ---------------------------------------------")
|
||||||
print("Reason: %s; URL: %s"%(uerror.reason, request.get_full_url()))
|
print("Reason: %s; URL: %s"%(uerror.reason, request.get_full_url()))
|
||||||
print("------------------------------------------------------------------------")
|
print("------------------------------------------------------------------------")
|
||||||
if (die_on_error_ == True) or (self.die_on_error == True):
|
if (die_on_error_ == True) or (self.die_on_error == True):
|
||||||
@@ -192,9 +209,9 @@ class LFRequest:
|
|||||||
exit(1)
|
exit(1)
|
||||||
return None
|
return None
|
||||||
|
|
||||||
def getAsJson(self, show_error=True, die_on_error_=False):
|
def getAsJson(self, show_error=True, die_on_error_=False, debug_=False):
|
||||||
responses = []
|
responses = []
|
||||||
responses.append(self.get(show_error, die_on_error_=die_on_error_))
|
responses.append(self.get(show_error, die_on_error_=die_on_error_, debug=(debug_ or self.debug)))
|
||||||
if (len(responses) < 1):
|
if (len(responses) < 1):
|
||||||
return None
|
return None
|
||||||
if (responses[0] == None):
|
if (responses[0] == None):
|
||||||
|
|||||||
Reference in New Issue
Block a user