一. 設置手機抓包
第一步:在charles里設置允許手機聯網的權限,並設置接入接口
在Charles的菜單欄上選擇"Proxy"->"Proxy Settings",填入代理端口8888(注意,這個端口不一定填寫8888,也可以寫別的端口),並且勾上”Enable transparent HTTP proxying”,這樣就完成了在Charles上的設置
在"Help"->"Local IP Address"中可以查看本機的ip地址,當然也可以在cmd中通過ipconfig查看
第二步:設置手機代理
以榮耀8為例,選中wifi名字,右擊,選擇修改網絡
顯示高級選項,輸入服務器主機名和服務器端口,點擊保存
二. 為避免(PC/Phone)抓取HTTPS失敗和亂碼,需要下載安裝SSL/HTTPS證書
==========================電腦端=============================
第一步:電腦安裝SSL證書
選擇 "Help" -> "SSL Proxying" -> "Install Charles Root Certificate",如果設置了安全防護,會ranging輸入系統的帳號密碼
這時開始安裝charles證書,一路點擊下一步即可
第二步:配置SSL的抓取域名
找到"Proxy"->"SSL Proxying Settings...",點擊
然后選中啟用SSL代理(Enable SSL Proxying),charles的Location配置都是支持通配符的,因此在Host里設置一個"*"就可以,port不寫
如果需要配置某個指定域名,也是在Host里填寫,配置指定域名時,一般Port是443,這樣就可以抓取到到HTTPS的內容了
==========================手機端=============================
第一步:手機安裝SSL證書
進入"Help"->"Install Charles Root Certificate on a Mobile Device or remote Browser",點擊
這時會有一個彈框,意思是要給手機設置代理,內容是192.168.1.103:8888,然后用手機瀏覽器打開chls.pro/ssl
點擊立即下載
在手機設置->高級設置->安全里開啟未知來源應用下載和外部來源應用安裝
在手機文件管理里找到證書,將后綴pem改成crt,點擊安裝即可
這時發現手機上的HTTPS也能抓取下來了
參考文章
https://zhubangbang.com/charles-https-packet-capture-method-and-principle.html