requestWithoutParse method
Implementation
Future<Map<String, dynamic>?> requestWithoutParse(
{String? apiUrl,
required dynamic query,
Map<String, String>? parameters}) async {
if (apiUrl == null) apiUrl = _apiURL;
if (parameters == null) parameters = defaultParams;
Response? response;
if (kIsWeb) {
response = await _webAPIManager.post(
apiUrl,
body: jsonEncode(query),
);
} else {
response = await _apiManager.post(
apiUrl,
body: jsonEncode(query),
);
}
print(response?.body);
if (response == null)
throw AppException(true,
beautifulMsg: 'Error occured',
title: "Server Error",
code: 0,
uglyMsg: "No response from server");
if (response.statusCode > 400) {
throw AppException(true,
beautifulMsg: ErrorUtil.getMessageFromCode(response.statusCode),
code: response.statusCode,
title: 'HTTP ERROR');
}
Map<String, dynamic> myData = json.decode(response.body);
// has error
if (myData.containsKey("errors")) {
String? error = myData['errors'][0]['message'];
int? code = myData['errors'][0]['extensions']['code'];
String? title = myData['errors'][0]['extensions']['title'];
throw AppException(
true,
beautifulMsg: error ?? 'Error occured',
title: title ?? "Server Error",
code: code ?? 200,
uglyMsg: myData.toString(),
);
}
return myData['data'];
}