request static method
Future<Response>
request({
- GrockDioType method = GrockDioType.get,
- required String path,
- Map<
String, dynamic> ? queryParameters, - dynamic data,
- Options? options,
----------------- request example -----------------
final request = await GrockDioServices.request(
method: GrockDioType.get,
path: '/posts',
queryParameters: {"userId": 1},
isLogger: true,
).grockResponseHandler(
success: (response) => Model.fromJson(response.data),
error: (err) => Toast.show(err.toString()),
loading: () => print("loading"),
done: () => print("done"),
);
Implementation
static Future<Response> request({
GrockDioType method = GrockDioType.get,
required String path,
Map<String, dynamic>? queryParameters,
dynamic data,
Options? options,
}) async {
try {
final dio = _dio;
final result = switch (method) {
GrockDioType.get => dio.get,
GrockDioType.post => dio.post,
GrockDioType.put => dio.put,
GrockDioType.delete => dio.delete,
GrockDioType.patch => dio.patch,
};
return await result(
path,
data: data,
queryParameters: queryParameters,
options: options,
);
} on DioException catch (e) {
return e.response!;
} catch (e) {
rethrow;
}
}