ApiClient constructor

ApiClient(
  1. SecureStorageService _secureStorage, {
  2. required String baseUrl,
})

Implementation

ApiClient(this._secureStorage, {required this.baseUrl}) {
  _dio = Dio(
    BaseOptions(
      baseUrl: baseUrl,
      connectTimeout: _connectionTimeout,
      receiveTimeout: _receiveTimeout,
      contentType: 'application/json',
      responseType: ResponseType.json,
      headers: {
        'Content-Type': 'application/json',
        'Accept': 'application/json',
      },
    ),
  );

  // Add interceptors
  _dio.interceptors.add(_TokenInterceptor(_secureStorage));
  _dio.interceptors.add(_ErrorInterceptor());

  // Logging in debug mode
  if (kDebugMode) {
    _dio.interceptors.add(
      LogInterceptor(requestBody: true, responseBody: true),
    );
  }
}