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) {
  if (err.response != null) {
    _saveCookies(err.response!)
        .then((_) => handler.next(err))
        .catchError((dynamic e, dynamic stackTrace) {
      final DioException err0 = DioException(
        requestOptions: err.response!.requestOptions,
        error: e,
        stackTrace: stackTrace as StackTrace,
      );
      handler.next(err0);
    });
  } else {
    handler.next(err);
  }
}