post static method
Implementation
static Future<Map<String,dynamic>> post({required String url,Map<String,dynamic >data=const {},Map<String, String> queryParams=const {},Map<String, String>? headers}) async {
Map<String,dynamic> result={"status":"failure","message":"error sending request"};
try{
Uri webUrl=WebServiceHelper.parseUrl(url,params: queryParams);
_debug("Executing Post on $webUrl");
_debug(data);
http.Response response = await http.post(
webUrl,
body: jsonEncode(data),
headers: await WebServiceHelper.getHeaders(requestHeaders: headers),
);
_debug("Received Response");
_debug(response.body);
_debug(response.body);
if (response.statusCode != 200 && response.statusCode != 201) {
_handleError(url: url,response: response);
}
else {
result = json.decode(response.body);
}
}
on Exception catch(ex,stack){
_debug(ex.runtimeType.toString());
if(ex.runtimeType.toString()=="_ClientSocketException"){
result["message"]="Connection Error!";
}
_handleException(exception:ex, stackTrace: stack,url:url);
}
return result;
}