@@ -207,7 +207,7 @@ def _errorCheck(self, res: dict):
207207
208208 def _req (self , method : str , url : str , authMode : str = "token" , headers : dict = None ,
209209 data : Union [dict , list , str ] = None , resKey : str = "results" , skipCheck : bool = False ,
210- params : Union [dict , list , str ] = None , strictJson : bool = True ) -> Union [dict , list ]:
210+ params : Union [dict , list , str ] = None , strictJson : bool = True , jsonData : bool = False ) -> Union [dict , list ]:
211211 """Generic REST++ API request.
212212
213213 Args:
@@ -228,6 +228,10 @@ def _req(self, method: str, url: str, authMode: str = "token", headers: dict = N
228228 action is not applicable. This argument skips error checking.
229229 params:
230230 Request URL parameters.
231+ strictJson:
232+ If JSON should load the response in strict mode or not.
233+ jsonData:
234+ If data in data var is a JSON document.
231235
232236 Returns:
233237 The (relevant part of the) response from the request (as a dictionary).
@@ -258,10 +262,14 @@ def _req(self, method: str, url: str, authMode: str = "token", headers: dict = N
258262 _data = None
259263
260264 if self .useCert is True or self .certPath is not None :
261- res = requests .request (method , url , headers = _headers , data = _data , params = params ,
262- verify = False )
265+ verify = False
263266 else :
264- res = requests .request (method , url , headers = _headers , data = _data , params = params )
267+ verify = True
268+
269+ if jsonData :
270+ res = requests .request (method , url , headers = _headers , json = _data , params = params , verify = verify )
271+ else :
272+ res = requests .request (method , url , headers = _headers , data = _data , params = params , verify = verify )
265273
266274 if res .status_code != 200 :
267275 res .raise_for_status ()
@@ -317,7 +325,7 @@ def _get(self, url: str, authMode: str = "token", headers: dict = None, resKey:
317325
318326 def _post (self , url : str , authMode : str = "token" , headers : dict = None ,
319327 data : Union [dict , list , str , bytes ] = None , resKey : str = "results" , skipCheck : bool = False ,
320- params : Union [dict , list , str ] = None ) -> Union [dict , list ]:
328+ params : Union [dict , list , str ] = None , jsonData : bool = False ) -> Union [dict , list ]:
321329 """Generic POST method.
322330
323331 Args:
@@ -344,7 +352,7 @@ def _post(self, url: str, authMode: str = "token", headers: dict = None,
344352 if logger .level == logging .DEBUG :
345353 logger .debug ("params: " + self ._locals (locals ()))
346354
347- res = self ._req ("POST" , url , authMode , headers , data , resKey , skipCheck , params )
355+ res = self ._req ("POST" , url , authMode , headers , data , resKey , skipCheck , params , jsonData = jsonData )
348356
349357 if logger .level == logging .DEBUG :
350358 logger .debug ("return: " + str (res ))
0 commit comments