httpGet<T> method
Implementation
Future<ApiResponse<T>> httpGet<T>(
{required Function converter, bool isAuth = true, Map<String, dynamic>? queryParams, bool isContentTypeHeader = false}) async {
var url = createUri("${HttpX.instance.baseUrl}$this",queryParams);
try {
http.Response response = await http.get(url, headers: {
if (isAuth) HttpX.instance.headerName: await HttpX.instance.token(),
if(isContentTypeHeader)'Content-Type': 'application/json;charset=UTF-8',
if(isContentTypeHeader) 'Charset': 'utf-8'
});
print("response: " + response.body);
final prefix = '';
var body = response.body;
if (body.startsWith(prefix)) {
body = body.substring(prefix.length);
}
return ApiResponse<T>(
code: response.statusCode,
data: converter(jsonDecode(body)),
error: null);
} catch (error) {
print("error" + error.toString());
return ApiResponse<T>(
code: HttpStatus.internalServerError,
data: null,
error: error.toString());
}
}