一、charles簡介
Charles 是常用的網路封包截取工具,在做 移動開發時,我們為了除錯與服務器端的網路通訊協議,常常需要截取網路封包來分析,
Charles 通過將自己設定成系統的網路訪問代理服務器,使得所有的網路訪問請求都通過它來完成,從而實作了網路封包的截取和分析,
除了在做移動開發中除錯埠外,Charles 也可以用于分析第三方應用的通訊協議,配合 Charles 的 SSL 功能,Charles 還可以分析 Https 協議,
二、charles安裝
charles的安裝非常簡單,直接通過charles官網安裝最新版即可,
Charles 是收費軟體,可以免費試用 30 天,試用期過后,未付費的用戶仍然可以繼續使用,但是每次使用時間不能超過 30 分鐘,并且啟動時將會有 10 秒種的延時,
三、基本配置
我使用的是win7的系統,所以以下配置適用于win7的電腦系統,win10也是類似的配置
1.PC端安裝證書
打開charles,選擇help–>SSL Proxying–> Install Charles Root Ceriticate,點擊安裝證書,一直點擊下一步完成即可成功安裝,如下圖所示:


2.web端抓包配置
以火狐瀏覽器為例,其它瀏覽器類似配置即可,
安裝charles后訪問火狐瀏覽器,無論訪問什么鏈接都會提示您的連接不安全,解決辦法與fiddler同理,需要安裝charles證書

a.將charles證書保存到本地,選擇help→SSL Proxying→Save Charles Certificate


b.進入Firefox瀏覽器選擇—高級-證書,點擊查看證書—匯入,選擇本地保存的證書,勾選信任,匯入即可,

c.重啟火狐瀏覽器,發現網頁可以正常打開,charles也可以正常抓包
3.手機抓包配置
1)手機端設定代理
此時你的手機必須和電腦在同一個網路/wifi里,手機選擇和電腦相同wifi—>長按此wifi彈框中選擇修改網路—>顯示高級選項—>服務器主機名輸入框中輸入電腦ip地址,服務器埠號填寫8888——>保存即可,此時手機和電腦系結在一起一遍電腦抓手機上請求網路資料

第一次設定成功代理后,隨便打開一個需要網路的應用,PC端會自動彈出以下提示,選擇allow允許Charles代理

如果沒有彈出該提示,也可以在選單欄中的proxy—Access Control settings中手動將手機和電腦的ip加入其中(手機的ip地址怎么查看可以自行百度)

2)手機安裝charles證書
a.IOS客戶端
前提:手機WiFi代理已經設定好,參考前文設定
1、打開Charles,選擇help→SSL Proxying→Install Charles Root Certificate on a Mobile Device or Remote Browser
2、手機連接電腦代理,打開safari,輸入網址:chls.pro/ssl
3、手機彈出提示:此網站正嘗試打開“設定”已向您顯示一個配置描述檔案,您要允許嗎?忽略|允許,選擇允許,安裝描述檔案,并信任
4、iOS10以上的手機需要在:設定→ 通用 → 關于本機 → 證書信任設定→ 找到charles proxy CA證書,打開信任即可
b.android客戶端
方式一:
點擊 help–>SSL Proxying–> Install Charles Root Ceriticate on a Mobile Device or Remote Browser,

手機設定好WiFi代理后,在手機瀏覽器打開下面彈框里提到的鏈接chls.pro/ssl,下載證書,安裝即可(華為手機最好不要用自帶的瀏覽器,因為自帶的瀏覽器下載的證書為pem格式,無法直接安裝,我用的百度瀏覽器)
cer格式的證書下載完可以直接點擊安裝,安裝證書程序中會要求輸入鎖屏密碼

方式二:
1、打開Charles,選擇help→SSL Proxying→Save Charles Certificate,然后將證書匯入到手機中
2、匯入后直接點擊安裝證書,提示無法打開(pem格式),cer格式的key直接安裝,可以忽略第三步
3、進入手機設定—>安全和隱私—>更多安全設定—>加密和憑據—>從存盤設備安裝—>選擇我們剛下載的證書,安裝即可(華為手機的安裝方式,其它安卓機型可以自行百度)

常見手機:小米手機,華為手機,需要設定手機鎖屏密碼


默認charles只可以抓取http協議的包,https的更安全,需要如下配置方可
4.設定抓取https
更多內容獲取:https://ai.52learn.online/9632
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/258368.html
標籤:其他
下一篇:aliyun-oss-01
