안녕하세요, QA 엔지니어 Hardin 입니다.
Charles Proxy는 앱과 인터넷 사이에 있습니다. 모든 네트워킹 요청과 응답은 Charles Proxy 를 통해 지나가기 때문에 네트워크 응답과 요청을 살펴보는 것이 가능하고 심지어 앱의 응답 방식을 테스트하기 위해 데이터 변경도 가능합니다.
(출처 : https://blog.logrocket.com/test-debug-android-apps-with-charles-web-proxy/)
HTTP 프록시로 Charles 를 사용하기 위해 iOS, Android 모바일 기기를 설정하는 방법은 다음과 같습니다.
그 전에 PC 에서 Charles 설치 및 환경설정이 필요합니다. 간단한 Charles 설정 정보를 공유드립니다. 자세한 내용은 본 문서 하단 참고링크 를 참조 부탁드립니다.
Charles > Help > SSL Proxing > Install Charles Root Certificate on a Mobile Device or Remote Browser 클릭
iOS 모바일 기기 > 설정 > Wi-Fi 에서 PC 와 동일한 네트워크로 잡고, 해당 네트워크 고급 설정(i)을 눌러서 Charles 프록시를 설정
a. HTTP 프록시 > 프록시 구성을 ‘수동’ 으로 설정
b. 서버는 Charles > Help > Local IP Addresses 에 노출된 정보로 설정
c. 포트는 '8888' 로 설정
설정 후 iOS 모바일 기기에서 웹 브라우저 접속
Charles 에서 SSL 프록시를 허용할지 묻는 대화 상자를 표시하면 허용(Allow)을 클릭
http://chls.pro/ssl 로 접속 후, 인증서 다운로드
설정 > 일반 > 프로파일이 다운로드됨 에서 다운로드 받은 인증서 설치
iOS 설정 > 일반 > 정보 > 인증서 신뢰 설정 > 루트 인증서 전체 신회 활성화 에서 다운로드 받은 인증서(Charles Proxy CA) 설치 > 활성화
삼성 Galaxy S20(Android) 개인 프로필 기준 입니다.
설정 후 모바일 기기에서 브라우저 접속
Charles 에서 SSL 프록시를 허용할지 묻는 대화 상자를 표시하면 허용(Allow)을 클릭
http://chls.pro/ssl 로 접속 후, 인증서 다운로드
직장 프로필에서도 인증서 설치 후 Charles 사용이 가능합니다.
직장 프로필 > 웹 브라우저에서 http://chls.pro/ssl 로 접속 후, 인증서 다운로드
Android 기기 설정 > 업무프로필 > 기타 보안 설정 > 디바이스에 저장된 인증서 설치 > CA 인증서 > 다운로드 폴더 에서 다운로드된 인증서(Charles Proxy CA) 설치