RequestsInspector는 개발 중 HTTP 및 GraphQL 요청을 디버깅하기 위해 설계된 Flutter 패키지입니다. 모든 외부 API 호출을 로그로 기록하고, 장치를 흔들어 실시간으로 요청/응답 데이터에 접근할 수 있도록 전용 인스펙터 위젯을 표시합니다. 코드 수정 없이 네트워크 활동을 빠르게 확인해야 하는 개발자에게 이상적입니다. 이 패키지는 Android와 iOS 플랫폼을 모두 지원하며, dio 또는 http와 같은 기존 HTTP 클라이언트와 원활하게 통합됩니다. 가벼운 설계로 성능에 미치는 영향을 최소화합니다.
사용 사례
API 엔드포인트 디버깅
GraphQL 쿼리 모니터링
요청 헤더 및 본문 검사
개발 중 실시간 네트워크 로깅
실패한 요청 문제 해결
주요 기능
흔들어서 검사기 열기
HTTP 및 GraphQL 지원
크로스 플랫폼(안드로이드 및 iOS)
최소한의 설정 필요
실시간 요청/응답 보기
적합한 대상
디버그 모드에서의 Flutter 개발자
팀이 API 통합 테스트 중
프론트엔드 엔지니어가 네트워크 문제를 진단하고 있습니다
REST/GraphQL를 사용하는 모바일 앱 개발자
빠른 네트워크 검사를 필요로 하는 누구나
고려 사항
생산 환경 사용을 위한 것이 아님
흔들기 제스처를 사용하려면 물리적 장치가 필요합니다
디버그 빌드에 한정
로그의 지속적 저장 없음
일부 기기에서는 권한이 필요할 수 있습니다
원본 README
연결된 소스 저장소의 README 원문 스냅샷입니다. 최신 내용은 저장소에서 확인하세요.
requests_inspector 🕵
A Flutter package for logging API requests (Http Requests & GraphQL) requests.
Main Features:
Log your Http request, GraphQL and WebSockets.
Intercept your requests and responses for testing.
Share request details as json, cURL, or HAR file to re-run it again (ex. Postman).
And more and more
To get the RequestsInspector widget on your screen:
📱💃 : Shake your phone.
📱👈 : Long-Press on any free space on the screen.
Also you can share the request details as (Log, cURL command, or HAR file) with your team to help them debug the API requests.
From Inspector to Postman 🧡 🎉️
Now you can extract cURL command from the inspector to send the request again from your terminal or Postman 💪💪
HAR File Support 📦 🎉️
You can now share requests as HAR (HTTP Archive) files! HAR files are a standard format that can be imported into various tools like Postman, Proxyman, or any HAR-compatible tool for debugging and analysis. You can share HAR files in two formats:
HAR text: Copy the HAR content as text
HAR file (.har): Share as a downloadable .har file
The HAR format includes complete request/response details, headers, timing information, and more, making it perfect for comprehensive API debugging and sharing with your team.
Setup
First, add it at the top of your MaterialApp with enabled: true.