Charles版本:4.0.2 一、開始 連接方式 方法一:電腦和手機連接同一個wifi 方法二:電腦使用網線連接網路,手機通過USB連接電腦 二、過濾網路請求 1.簡單過濾 在Sequence模式下,就可以看到Filter,輸入要過濾的關鍵字即可。 2.長期特定的網路封包 路徑:Proxy Rec ...
Charles版本:4.0.2
一、開始
連接方式
- 方法一:電腦和手機連接同一個wifi
- 方法二:電腦使用網線連接網路,手機通過USB連接電腦
二、過濾網路請求
1.簡單過濾
在Sequence模式下,就可以看到Filter,輸入要過濾的關鍵字即可。
2.長期特定的網路封包
路徑:Proxy->Recording Settings->Include→Add
在編輯框中填入要封的網路請求
3.關註特定的網路請求
在想要特定關註的網路請求那行,右鍵勾選"Focus"即可
三、抓取手機網路包
前提:手機,電腦連結的是通一個wifi網路
在菜單欄上選擇 Proxy->Proxy Settings,填入代理埠 8888,並勾上 “Enable transparent HTTP proxying” 即完成了代理
查看電腦IP地址
在手機wifi網路中添加代理,輸入電腦IP和charles的埠號 8888
抓HTTPS包
1.Mac安裝SSL證書
在Help→SSL Proxying→Install....
選擇後,就會出現證書下載,下載成功後會電腦”鑰匙串訪問“中看見(這裡我已經安裝並信任過了),然後雙擊下載的證書,勾選信任即可。
2.手機安裝SSL證書
在SSL Proxying中勾選Install ...Mobile Device 會彈出一個框,用手機(處於代理狀態下)登陸指定的url下載證書即可。
這時候你抓https的時候還是發現不行,亂碼加unknown(如下圖)
這時候我們還需要一步操作,就是將想要抓的https加入到SSL代理中,這樣才能被Charles識別並解析
選擇我們要抓的請求,右鍵選擇"Enable SSL Proxying"
這時我們發現不再亂碼和unknown了
四、網路限速
開發中常備限速,通常對於Chrome我們可以使用瀏覽器中的"Network中Online修改",下拉還有3G等設置。
但是通過代理我們可以做的更全更多
在"Proxy→Throttle Settings"中,我們可以給所有的網路限速,也可以通過勾選"Only for selected hosts"限制指定的請求速度
五、修改網路請求內容
選中一條網路請求,然後右鍵選擇"Compose",就會出現上圖下半部分的框,可以修改幾乎任何你可以想到的請求參數,點擊"Execute"執行即可
六、修改伺服器返回的內容
1.Map Remote(Tools→Map Remote Settings)
將網路響應定向至另外一個網路服務,從而達到修改返回內容的目的
2.Map Local(Tools->Map Local Settings)
將網路響應定向至本地文件,從而達到修改返回內容的目的
3.Breakpoints替換返回內容(右鍵->Breakpoints)
通過名稱也可以看的出來,這個類似於一種斷點的功能,代理會在發送請求的時候攔截並斷點網路請求,這就為我們修改網路信息提供了便利。
可以編輯請求的參數和返回的參數。
七、反向代理
反向代理(Proxy→Reverse Proxies Settings)也是一個常用的功能,特別是對於本地開發且需要功能變數名稱的情況下
這個截圖的意思是 將本地 57689埠映射到www.os.com功能變數名稱的80埠