이번 포스트에서는 Flutter 애플리케이션에서 API 요청 및 응답을 로깅하기 위해 pretty_dio_logger
라이브러리를 사용하는 방법에 대해 알아보겠습니다.
pretty_dio_logger란?
pretty_dio_logger
는 Dio 클라이언트에서 네트워크 요청 및 응답을 보기 좋게 로깅할 수 있는 Flutter용 라이브러리입니다. 이 라이브러리를 사용하면 네트워크 요청과 응답의 세부 정보를 쉽게 확인할 수 있어 디버깅에 유용합니다.
pretty_dio_logger 설치
먼저, pretty_dio_logger
를 프로젝트에 추가하려면, pubspec.yaml
파일에 아래와 같이 라이브러리를 추가합니다.
dependencies:
dio: ^4.0.0
pretty_dio_logger: ^1.0.7
그리고 터미널에서 아래 명령어를 실행하여 의존성을 업데이트합니다.
flutter pub get
pretty_dio_logger를 통한 로깅 설정
pretty_dio_logger
를 사용하여 API 요청 및 응답을 로깅하려면, 다음과 같이 Dio
인스턴스를 생성하고 PrettyDioLogger
를 추가하면 됩니다.
import 'package:dio/dio.dart';
import 'package:pretty_dio_logger/pretty_dio_logger.dart';
void main() {
Dio dio = Dio();
dio.interceptors.add(PrettyDioLogger());
}
위 코드에서 PrettyDioLogger
는 Dio
인스턴스의 인터셉터로 추가되어 네트워크 요청과 응답을 로깅합니다.
요청 및 응답 로깅 확인
이제 pretty_dio_logger
를 추가한 후에 애플리케이션을 실행하면 콘솔에 아래와 유사한 로그를 확인할 수 있습니다.
Dio ╎ [POST] ╎ http://api.example.com/users ╎ │ 00:00:01.002 ╎ │ 200 ╎ ✔
Request data ╎
{
"name": "John Doe",
"email": "john.doe@example.com"
}
Response headers ╎
cache-control: max-age=31536000
content-type: application/json; charset=utf-8
{
"id": 123,
"name": "John Doe",
"email": "john.doe@example.com"
}
로깅된 정보에는 HTTP 메서드, 요청 URL, 소요 시간, 상태 코드, 요청 및 응답 데이터 등이 포함되어 있어 디버깅에 매우 유용합니다.
결론
Flutter 애플리케이션에서 API 요청과 응답을 보다 효과적으로 디버깅하고 추적하기 위해 pretty_dio_logger
라이브러리를 사용하는 방법에 대해 알아보았습니다. 이 라이브러리를 사용하면 네트워크 통신에 관련된 문제를 더 쉽게 해결할 수 있게 됩니다.
더 많은 기능 및 옵션에 대해서는 공식 pretty_dio_logger GitHub 페이지를 참고하세요.