safeApiCall static method
dynamic
safeApiCall(})
perform safe api request
Implementation
static safeApiCall(
String url,
RequestType requestType, {
Map<String, dynamic>? headers,
Map<String, dynamic>? queryParameters,
Map<String, dynamic>? data,
required Function(Response response) onSuccess,
}) async {
try {
late Response response;
if (requestType == RequestType.get) {
response = await _dio.get(
url,
queryParameters: queryParameters,
options: Options(
headers: headers,
),
);
} else if (requestType == RequestType.post) {
response = await _dio.post(
url,
data: data,
queryParameters: queryParameters,
options: Options(headers: headers),
);
} else if (requestType == RequestType.put) {
response = await _dio.put(
url,
data: data,
queryParameters: queryParameters,
options: Options(headers: headers),
);
} else {
response = await _dio.delete(
url,
data: data,
queryParameters: queryParameters,
options: Options(headers: headers),
);
}
// 3) return response (api done successfully)
await onSuccess(response);
} catch (error) {
print("Error");
print(error.toString());
}
}