import 'package:dio/dio.dart'; class HTTPInterceptor extends InterceptorsWrapper { @override void onResponse(Response response, ResponseInterceptorHandler handler) async { // Pass the response to the next interceptor or response handler. return handler.next(response); } @override void onRequest(RequestOptions options, RequestInterceptorHandler handler) async { // TODO: Implement logic for adding headers to requests. // This method is called before a request is sent. super.onRequest(options, handler); } @override void onError(DioException err, ErrorInterceptorHandler handler) async { // TODO: Implement error handling logic. // This method is called when an error occurs during a request. super.onError(err, handler); } /// Validates the response and returns true if it is successful (status code 2xx). Future validateResponse(Response response) async { if (response.statusCode != null) { if (response.statusCode! >= 200 && response.statusCode! < 300) { // If the response status code is within the successful range (2xx), // return true indicating a successful response. return true; } else { // If the response status code is not within the successful range (2xx), // return false indicating an unsuccessful response. return false; } } else { // If the response status code is null, return false indicating an unsuccessful response. return false; } } }