apicall static method
Implementation
static Future<List> apicall(
{String requests = 'post',
required Map<String, dynamic> param,
required String uri,
required String label}) async {
List endresult = [-1, ErrorMsg.wentWrong];
await Network.networkCheck().then(
(bool network) async {
if (network) {
print(
"$label :: =====URL=====> requests: $requests, uri: $uri, param: $param");
print("=TRST = ${json.encode(param)}");
try {
var headers = {'Content-Type': 'application/json'};
var request = http.Request(requests, Uri.parse(uri));
request.body = json.encode(param);
request.headers.addAll(headers);
final http.StreamedResponse response = await request.send();
final result = await http.Response.fromStream(response);
if (response.statusCode == 200) {
print("$label :: ======success======");
endresult = [result.statusCode, result.body];
} else {
print("$label :: ======failed======${result.statusCode}");
String errorName = ErrorMsg.errorMsg(
code: result.statusCode, jsonString: result.body);
endresult = [result.statusCode, errorName];
}
} catch (e) {
print("$label :: ======failed======$e");
String errorName = ErrorMsg.errorMsg(code: -1, jsonString: '');
endresult = [-1, errorName];
}
} else {
endresult = [-1, ErrorMsg.noNetwork];
}
},
);
return endresult;
}