import 'package:dio/dio.dart'; import 'package:flutter_dotenv/flutter_dotenv.dart'; import 'package:logger/logger.dart'; var logger = Logger(printer: PrettyPrinter()); class Http { final Dio dio = Dio(); final String baseUrl = dotenv.env['BASE_URL'] ?? ''; Http() { dio.options.baseUrl = baseUrl; dio.options.connectTimeout = const Duration(seconds: 60); dio.options.receiveTimeout = const Duration(seconds: 60); dio.interceptors.add( LogInterceptor( request: true, responseBody: false, requestBody: true, error: true, ), ); } Future get(String url) async { Response response; response = await dio.get(baseUrl + url); logger.i(response.data.toString()); return response.data; } Future post(String url, dynamic data) async { Map headers = {'Content-Type': 'application/json'}; Response response; response = await dio.post( baseUrl + url, data: data, options: Options(headers: headers), ); logger.i(response.data.toString()); return response.data; } }