import 'package:dio/dio.dart'; //import 'auth_interceptor.dart'; import 'nw_api.dart'; import 'nw_method.dart'; class DioManager { static final DioManager _shared = DioManager._internal(); factory DioManager() => _shared; late Dio dio; DioManager._internal() { BaseOptions options = BaseOptions( baseUrl: NWApi.baseApi, contentType: Headers.jsonContentType, responseType: ResponseType.json, connectTimeout: const Duration(seconds: 30), receiveTimeout: const Duration(seconds: 30), ); dio = Dio(options); //dio.interceptors.add(AuthInterceptor()); } // 请求,返回参数为 T // method:请求方法,NWMethod.POST等 // path:请求地址 // params:请求参数 Future request( NWMethod method, String path, { Map? params, Map? queryParameters, }) async { Response response = await dio.request( path, data: params, queryParameters: queryParameters, options: Options(method: nwMethodValues[method]), ); return response.data; } }