get<T> method

Future<ResponseModel<T>> get<T>(
  1. String path, {
  2. Map<String, dynamic>? queryParameters,
  3. Options? options,
  4. CancelToken? cancelToken,
  5. void onReceiveProgress(
    1. int,
    2. int
    )?,
  6. T decoder(
    1. dynamic
    )?,
  7. bool useResponseModel = true,
})

Enhanced GET request with ResponseModel wrapper

Implementation

Future<ResponseModel<T>> get<T>(
  String path, {
  Map<String, dynamic>? queryParameters,
  Options? options,
  CancelToken? cancelToken,
  void Function(int, int)? onReceiveProgress,
  T Function(dynamic)? decoder,
  bool useResponseModel = true,
}) async {
  try {
    final response = await _dio.get(
      path,
      queryParameters: queryParameters,
      options: _mergeOptions(options),
      cancelToken: cancelToken ?? _cancelToken,
      onReceiveProgress: onReceiveProgress,
    );

    if (useResponseModel) {
      return ResponseModel.fromResponse(response, decoder);
    } else {
      return ResponseModel<T>(
        data: _decodeResponse<T>(response, decoder),
        success: true,
        statusCode: response.statusCode,
      );
    }
  } catch (e) {
    throw _handleError(e);
  }
}