onResponse method

  1. @override
Future<void> onResponse(
  1. Response response,
  2. ResponseInterceptorHandler handler
)
override

Called when the response is about to be resolved.

Implementation

@override
Future<void> onResponse(
  Response response,
  ResponseInterceptorHandler handler,
) async {
  // Reachable only when a permissive validateStatus lets a rejection
  // resolve instead of throwing.
  if (!_shouldRecover(
    status: response.statusCode,
    options: response.requestOptions,
  )) {
    return handler.next(response);
  }

  final recovered = await _recover(response.requestOptions);
  if (recovered != null) return handler.resolve(recovered);

  handler.next(response);
}