Charles에서 타사 앱의 통신을 들여다 봅니다.

3664 단어 iOS아이폰
이 기사는 Speee Advent Calendar 둘째 날 기사입니다.
전날 기사는 여기 Ruby 힘을 높이기 위해서는 표준 방법을 배우자 (Enumerable편)

실제 기기의 iPhone에서 움직이는 앱의 통신을 캡처하는 방법.

스스로 앱을 만들 때 타사 앱이 어떤 통신을 하고 있는지 참고로 할 때 사용하는 방법입니다.

iPhone에서의 방법입니다만, Android에서도 프록시의 설정 할 수 있으면 볼 수 있을 것.

Charles 소개



여기 에서.

프리 트라이얼판이라면 기동시에 10초 기다립니다.

처음에는 패스워드 입력이 필요했던 것 같다.

액세스 제어 설정



Wifi를 통해 액세스할 수 있도록 합니다.
Proxy > Access Control Settings...

0.0.0.0/0
이것으로 우선 전개에.

그리고 Mac의 로컬 IP를 ifconfig라든지로 확인해 둔다.

iPhone 측 설정



Wifi 설정 열기.



Mac의 IP와 포트 8888을 지정.



이제 Safari에서 적절한 페이지를 열면 Charles에 벨로벨로 나올 것입니다.



SSL 관련 설정



지금까지 클리어 텍스트 통신 밖에 내용을 들여다 볼 수 없기 때문에 https 통신 내용도 볼 수 있도록 설정한다.

iPhone의 Safari에서 ぇ tp // 짱 rぇsp로 xy. 코 m / 게 tsl에 액세스합니다.

설정 앱으로 리디렉션되므로 프로필을 설치합니다.



Charles 측의 Proxy > SSL Proxy Settings...*:* 를 추가합니다.



https통신 속에서도 볼 수 있게 된다.

시험에



Amazon 앱의 API는 이렇게 되어 있구나-같다.



2017/07/03 추가



어딘가의 iOS 버전부터 기본적으로 타사 인증서를 신뢰하지 않는 것 같습니다. (프로필을 설치한 후 수동으로 신뢰 설정을 구성해야 함)

Unable to use SSL Proxy in Charles 4.0.2 on a remote device with iOS 10.3 beta 2 version. Any workaround available?

설정 앱에서 一般 > 情報 > 証明書信頼設定 에서 Charles의 인증서를 ON으로 할 필요가 있는 것 같습니다.

사이고에게



프리 트라이얼판은 연속해서 30분간 밖에 사용할 수 없다. 한 번 종료하고 다시 한번 기동하면 다시 30분 사용할 수 있다. 편리하다고 생각하면 라이센스 사자.

Charles가 닫은 후에는 iPhone의 프록시 설정을 끄지 않으면 그 Wifi로 인터넷 연결되지 않으므로주의.

Charles가 기동하고 있는 동안은 iCal의 동기화가 실패해 버리거나 AppleMusic이 상태가 나쁘거나 하지만 Charles 닫으면 치유하기 때문에 무시하고 오케이.

내일도 내가 쓰는 것이 좋겠어~

좋은 웹페이지 즐겨찾기