handleResponse static method

dynamic handleResponse(
  1. Response response
)

Implementation

static dynamic handleResponse(Response response) {
  switch (response.statusCode) {
    case 200:
      return response.bodyBytes.isEmpty == true
          ? null
          : Response.bytes(
              response.bodyBytes,
              200,
              headers: response.headers,
              isRedirect: response.isRedirect,
              persistentConnection: response.persistentConnection,
              reasonPhrase: response.reasonPhrase,
              request: response.request,
            );
    case 204:
      return null;
    case 400:
      if (response.bodyBytes.isEmpty == true) {
        throw HttpError.badRequest;
      } else {
        return Response.bytes(
          response.bodyBytes,
          400,
          headers: response.headers,
          isRedirect: response.isRedirect,
          persistentConnection: response.persistentConnection,
          reasonPhrase: response.reasonPhrase,
          request: response.request,
        );
      }
    case 401:
      throw HttpError.unauthorized;
    case 403:
      throw HttpError.forbidden;
    case 404:
      throw HttpError.notFound;
    case 500:
      throw HttpError.internalError;
    default:
      throw HttpError.internalError;
  }
}