onResponse method

  1. @override
Future<UnifiedResponse> onResponse(
  1. UnifiedResponse response
)
override

Implementation

@override
Future<UnifiedResponse> onResponse(UnifiedResponse response) async {
  final req = response.request;
  if (req != null && response.statusCode != null) {
    final start = req.startedAt ?? DateTime.now();
    final duration = DateTime.now().difference(start);

    NetworkLogStorage.instance.addLog(
      NetworkLogModel(
        method: req.method,
        url: req.uri.toString(),
        requestHeaders: req.headers,
        requestBody: req.body,
        responseHeaders: response.headers,
        responseBody: response.data,
        statusCode: response.statusCode!,
        timestamp: start,
        duration: duration,
      ),
    );
  }
  return response;
}