requestDELETE method

Future<HttpResponse> requestDELETE(
  1. HttpClient client,
  2. String url, {
  3. Map<String, String>? headers,
  4. Authorization? authorization,
  5. Map<String, String?>? queryParameters,
  6. bool noQueryString = false,
  7. Object? body,
  8. String? contentType,
  9. String? accept,
  10. String? responseType,
  11. ProgressListener? progressListener,
})

Implementation

Future<HttpResponse> requestDELETE(
  HttpClient client,
  String url, {
  Map<String, String>? headers,
  Authorization? authorization,
  Map<String, String?>? queryParameters,
  bool noQueryString = false,
  Object? body,
  String? contentType,
  String? accept,
  String? responseType,
  ProgressListener? progressListener,
}) async {
  var httpBody = HttpRequestBody(body, contentType, queryParameters);
  var requestBody = buildRequestBody(client, httpBody, authorization);

  var requestURL = buildRequestURL(
    client,
    url,
    authorization: authorization,
    queryParameters: queryParameters,
    noQueryString: noQueryString,
  );

  var requestHeaders = buildRequestHeaders(
    client,
    HttpMethod.DELETE,
    url,
    headers: headers,
    authorization: authorization,
    contentType: requestBody.contentType,
    accept: accept,
  );

  var requestURLOr = client._interceptRequest(
    HttpMethod.DELETE,
    requestURL,
    requestHeaders,
  );

  // Awaited only with an interceptor (no asynchronous step without it).
  requestURL = requestURLOr is Future<String>
      ? await requestURLOr
      : requestURLOr;

  return submitHttpRequest(
    client,
    HttpRequest(
      HttpMethod.DELETE,
      url,
      requestURL,
      authorization: authorization,
      queryParameters: queryParameters,
      noQueryString: noQueryString,
      withCredentials: _withCredentials(client, authorization),
      requestHeaders: requestHeaders,
      sendData: requestBody.contentAsSendData,
      responseType: responseType,
    ),
    progressListener,
    client.logRequests,
  );
}