charles是一個網絡代理服務器,一般用於抓請求、配代理等。
Mac抓包
-
首先需要將charles設置成系統代理,抓取http請求
【Proxy->macOS Proxy】勾選上,之后就可以看見有網絡請求出現在charles的頁面了。

-
抓取https請求
但是現在只能抓取到http的請求,抓取不到https的請求(https都是🔐和unknow):
此時需要打開【Proxy-SSL Proxying Settings】勾選Enable SSL Proxying,add上*:*或者*:443表示允許抓到所有請求或https請求,443端口是https的。



點擊ok電腦上就可以抓到http和https的所有請求了
如果不行
1. 打開Charles,選擇Help->SSL Proxy→Install Charles Root Certificate

2. 在彈出的添加證書窗口中,選擇添加,可以看到在鑰匙串訪問窗口中,該證書已成功添加,但是此時該證書仍然不被信任

3. 雙擊此證書,在彈出的Charles Proxy CA窗口中,點擊信任按鈕,使用此證書時,選擇始終信任后關閉窗口,使用賬號和密碼授權后,即可看到此證書已經被信任了

4. 關閉彈出,輸入密碼保存生效后,再次打開www.baidu.com,會發現已經可以正常訪問啦
IPhone抓包
首先,在電腦上:
【系統偏好設置->網絡->網絡的ip地址】,如我的192.168.110.168
或者
charles的:


然后在手機上:
打開設置,連接到與電腦同一局域網下

將配置代理設置為手動,將服務器設置為電腦連接的網絡的ip,端口為8888,是charles的默認端口


然后在手機上用Safari打開chls.pro/ssl這個地址下載並安裝證書。


安裝之后隨便打開一個網頁
電腦上的charles就會彈出:點allow就可以了

如果不小心手滑點了deny,也沒關系,可以在電腦上打開【Proxy-Access Control Settings】



然后點擊add,把手機上的【設置-無線局域網-i-ip地址】添加上去,點ok即可抓取到這部iphone上的請求。
