get method

Future<Map<String, dynamic>> get({
  1. required String url,
  2. Map<String, dynamic>? parameters,
})

Implementation

Future<Map<String, dynamic>> get({
  required String url,
  Map<String, dynamic>? parameters,
}) async {
  try {
    await _checkInternet();
    log('===================================================');
    String param = _makeParameter(parameters);
    log('url: $url$param');

    Uri uri = Uri.parse('$url$param');
    var response = await http.get(uri, headers: _makeHeader());

    if (response.statusCode == 200) {
      log('response(${response.statusCode}: ${response.body}');
      log('===================================================');
      Map<String, dynamic> jsonResponse = json.decode(response.body);
      // _checkAfterResponse(jsonResponse);

      return jsonResponse;
    }
    throw NetworkException(
      message: 'Something went wrong',
      code: response.statusCode,
    );
  } on NetworkException catch (e) {
    log('Network exception(${e.code}): ${e.message}');
    log('===================================================');
    rethrow;
  } on InternetException catch (e) {
    log('Internet exception: ${e.message}');
    log('===================================================');
    rethrow;
  } catch (e) {
    log('error: ${e.toString()}');
    log('===================================================');
    rethrow;
  }
}