You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
uco-mobile-poc/lib/app/core/config/logging.dart

53 lines
1.5 KiB
Dart

import 'package:dio/dio.dart';
import 'package:uco_mobile_poc/app/core/config/requset_attr.dart';
import 'package:uco_mobile_poc/app/core/config/server_response.dart';
import '../dialogs/custom_loading.dart';
import '../utils/logs_utils.dart';
import 'api_utils.dart';
class Logging extends Interceptor {
late RequestAttr requestAttr;
Logging(this.requestAttr);
@override
void onRequest(RequestOptions options, RequestInterceptorHandler handler) {
showLoader();
// refresh token if expired
if (ApiUtils.isHeaderRequired) {
// options.headers['Authorization'] = 'Bearer $API_KEY';
}
print(
"request_data =>> TYPE: ${options.method}\n" + requestAttr.toString());
return super.onRequest(options, handler);
}
@override
void onResponse(Response response, ResponseInterceptorHandler handler) {
hideLoader();
print("Response_SUCCESS =>> ${response.data.toString()}");
return super.onResponse(response, handler);
}
@override
void onError(DioError err, ErrorInterceptorHandler handler) {
hideLoader();
dp("============Error Response", err.response);
ServerResponse response = ServerResponse.init();
ApiUtils.parseError(response, err.response!);
pe("Response_ERROR =>> ", response.toString());
if (err.response != null) {
ServerResponse response = ServerResponse.init();
ApiUtils.parseError(response, err.response!);
pe("Response_ERROR =>> ", response.toString());
}
return super.onError(err, handler);
}
}