executeRawRequest method

Future<HttpClientResponse> executeRawRequest(
  1. String method,
  2. Uri uri,
  3. Map<String, String> headers,
  4. Uint8List? body,
  5. Set<int>? validStatuses,
)
inherited

Executes a HTTP request against give full uri.

Implementation

Future<HttpClientResponse> executeRawRequest(
  final String method,
  final Uri uri,
  final Map<String, String> headers,
  final Uint8List? body,
  final Set<int>? validStatuses,
) async {
  final request = await httpClient.openUrl(method, uri);
  request.headers.addAll(headers);

  if (body != null) {
    request.add(body);
  }
  if (cookieJar != null) {
    request.cookies.addAll(await cookieJar!.loadForRequest(uri));
  }

  final response = await request.close();
  if (cookieJar != null) {
    await cookieJar!.saveFromResponse(uri, response.cookies);
  }

  if (validStatuses?.contains(response.statusCode) ?? true) {
    return response;
  } else {
    throw await DynamiteApiException.fromResponse(response);
  }
}