delete method

Future<Response> delete(
  1. String url, {
  2. dynamic data,
  3. Map<String, dynamic>? queryParameters,
  4. Options? options,
  5. CancelToken? cancelToken,
  6. CacheOptions? cacheOptions,
})

Sends a DELETE request to the specified url.

  • url: The request URL.
  • data: Optional request body data (less common for DELETE).
  • queryParameters: Optional URL query parameters.
  • options: Dio Options for this specific request. Merged with cacheOptions.
  • cancelToken: Optional CancelToken for cancellation.
  • cacheOptions: Optional CacheOptions specific to this request. Uses globalCacheOptions if null and available.

Returns a Future<Response> containing the raw Dio response upon success.

Throws a NetworkException subtype on failure.

Implementation

Future<Response> delete(
  String url, {
  dynamic data,
  Map<String, dynamic>? queryParameters,
  Options? options,
  CancelToken? cancelToken,
  CacheOptions? cacheOptions,
}) async {
  try {
    final Response response = await _dio.delete(
      url,
      data: data,
      queryParameters: queryParameters,
      options: _mergeDioAndCacheOptions(
        dioOptions: options,
        cacheOptions: cacheOptions ?? globalCacheOptions,
      ),
      cancelToken: cancelToken, // Pass token directly
    );
    return response;
  } on DioException catch (e) {
    throw _handleDioError(e);
  } catch (e) {
    throw UnknownNetworkErrorException(
      message: 'Unexpected error during DELETE request processing: $e',
      code: NetworkErrorCode.unknownError, // Use specific code
      originalError: e,
    );
  }
}