onError method

  1. @override
void onError(
  1. DioException err,
  2. ErrorInterceptorHandler handler
)

Called when an exception was occurred during the request.

Implementation

@override
void onError(DioException err, ErrorInterceptorHandler handler) {
  try {
    if (_shouldSkip(
          err.requestOptions,
          FilterArgs(true, err.response?.data),
        ) ||
        !error) {
      return handler.next(err);
    }

    switch (_mode) {
      case _EffDioLoggerMode.lightweight:
        _logLightweightError(err);
      case _EffDioLoggerMode.compat:
        _logCompatError(err);
    }
  } catch (e, s) {
    _debugLog(e, s);
  }
  return handler.next(err);
}