post<T> method

Future<Map<String, dynamic>> post<T>(
  1. String path, {
  2. String? baseUrl,
  3. dynamic data,
  4. Map<String, dynamic>? queryParameters,
  5. Options? options,
  6. CancelToken? cancelToken,
  7. ApiCallback? apiCallback,
})

Implementation

Future<Map<String, dynamic>> post<T>(String path,
    {String? baseUrl,
    dynamic data,
    Map<String, dynamic>? queryParameters,
    Options? options,
    CancelToken? cancelToken,
    ApiCallback? apiCallback}) async {
  apiCallback?.onStart(path);
  if (_dio == null) {
    await _initDio(_networkConfig);
  }
  if (baseUrl != null && baseUrl.isNotEmpty) {
    path = '$baseUrl/$path';
  }
  try {
    Response<dynamic> response = await _dio!.post(path,
        data: data,
        queryParameters: queryParameters,
        options: options,
        cancelToken: cancelToken,
        onSendProgress: apiCallback?.onSendProgress,
        onReceiveProgress: apiCallback?.onReceiveProgress);
    apiCallback?.onCompleted(path, true);
    return _buildJsonSuccess(response.data);
  } catch (error) {
    apiCallback?.onCompleted(path, false);
    apiCallback?.onApiError(error);
    return _buildJsonException(error);
  }
}