delete method

Future delete(
  1. String endpoint, {
  2. dynamic body,
  3. Map<String, dynamic> query = const {},
  4. CancelToken? cancelToken,
  5. Options? options,
})

DELETE: Sends a DELETE request to the specified endpoint with an optional body.

Returns the response data on success, or handles errors using _handleError.

endpoint: The API endpoint to send the DELETE request to. body: Optional data to include in the DELETE request body.

Implementation

Future<dynamic> delete(
  String endpoint, {
  dynamic body,
  Map<String, dynamic> query = const {},
  CancelToken? cancelToken,
  Options? options,
}) async {
  try {
    final response = await _dio.delete(
      endpoint,
      data: body != null ? jsonEncode(body) : null,
      queryParameters: query,
      options: options,
      cancelToken: cancelToken,
    );
    if (isApiLoggerEnable) {
      await _sqfLiteService.add(data: {
        "url": response.realUri.toString(),
        "request": jsonEncode(response.requestOptions.data),
        "response": jsonEncode(response.data),
        "statusCode": response.statusCode,
        "error": "No Error",
        "header": jsonEncode(response.headers.map),
        "method": response.requestOptions.method,
        "timestamp" : DateTime.now().toIso8601String(),
      });
    }
    return response.data;
  } catch (e) {
    return _handleError(e);
  }
}