Skip to content

Charles安裝和使用教程

Charles簡介

Charles是什麼

Charles中文名叫青花瓷,是PC常用的網絡封包截取工具,其實是一款基於HTTP協議的代理伺服器,通過將自己設置成系統(電腦或瀏覽器)的網絡訪問代理伺服器,然後截取請求和請求結果,達到抓包分析的目的。該軟件是用Java寫的,能夠在Windows、Mac、Linux上使用

Charles的工作原理

前置步驟

  1. 需要運行Charles並配置代理
  2. 在客戶端上面需要配置代理

步驟

  1. 由客戶端發送請求;
  2. Charles接收在發送給伺服端;
  3. 伺服端返回請求結果給Charles;
  4. 由Charles轉發給客戶端。

Charles的主要功能

  • 抓取HTTP和HTTPS的請求和相應
  • 支持重發網絡請求,方便後端調式
  • 支持修改網絡請求參數
  • 支持網絡請求的截取並動態修改(斷點調試 )
  • 支持模擬慢速網絡(流量控制),主要是模仿手機2G/3G/4G的訪問流程

Charles安裝與配置

安裝Charles

Charles官網:http://www.charlesproxy.com
  1. 根據不同的系統,選擇對應鏈接下載

注:window安裝,Charles下載後,打開安裝程序,按照提示一路下一步,就可以安裝成功了

​  MAC版安裝包打開後將 Charles 拖到 Application 目錄下即可

Charles界面

PC 抓取HTTP協議

> 啟動Charles後,Charles會自動設置成瀏覽器的代理,不需要進行過多的設置。通過PC瀏覽器瀏覽網頁時,瀏覽器會發送網絡請求和接收響應,Charles就會直接抓取到這些請求信息和響應信息。

PC 抓取HTTPS協議

https協議的包不能正常顯示,會顯示unknown,需要安裝SSL證書才可以

安裝SSL證書步驟:

  1. 點擊頂部菜單欄【Help(幫助)】–>選擇【SSL Proxying(SSL代理)】,點擊【install Charles Root Certificate(安裝Charles Root證書) 】安裝Charles根證書即可(PS:安裝過程一直下一步就可以)

  1. 點擊【Proxy(代理)】–>【SSL Proxying Settings…(SSL代理設置)】

  1. 在彈出選項卡中,勾選【Enable SSL Proxying(啟用SSL代理)】點擊【add(添加)】,在Host輸入【*】表示接收任何主機,在Prot輸入【443】最後點擊【ok】保存。

完成以上操作,就完成Charles抓取HTTPS數據包的所有配置了。

抓取APP端的HTTP/HTTPS協議

Charles可以抓取來自App發出的HTTP/HTTPS請求。

手機抓包需要在電腦端配置下,並且同時需要手機和電腦在同一網絡下,也就是手機和電腦連接同一個wifi。

電腦端配置:

  1. 電腦端啟動Charles;
  2. 點擊【Help(幫助)】–>【local IP Address(本地IP地址)】獲取下ip地址。(也可以直接通過電腦自帶的CMD命令來獲取電腦IP【ipconfig】)
方法一:

方法二:

打開"運行"(快捷鍵:win+R鍵;或者在任務欄的"搜索"按鈕中查找並點擊"運行"),輸入"cmd"後進入命令行窗口,在命令行窗口中輸入"ipconfig"命令查看IP

  1. 點擊【Proxy(代理)】–>【Proxy Settings…(代理設置)】,設置下http代理端口號"9999",默認是"8888",只要不和其他程序衝突即可。

手機端設置:

  1. 打開手機的設置頁面;
  2. 選擇【無線和網絡】;
  3. 選擇【WLAN】;
  4. 點擊wifi進入詳情界面;
  5. 點擊【代理】【手動】;
  6. 輸入電腦【IP地址(192.168.1.12)】以及端口號【8888】,這是我本機的,根據自己情況合理配置;
  7. 點擊【保存】;

電腦端Charles彈出鏈接請求後,點擊【Allow(同意)】

接下來驗證下手機請求,打開手機App,或者手機瀏覽器。當我們看到Charles裡能抓到這個連接,就說明配置沒問題。

如果看到unknown,那是因為我們沒有安裝針對手機端的證書,下面繼續我們手機端HTTPS證書安裝。

安裝手機端HTTPS證書

  1. 點擊頂部菜單欄【Help(幫助)】–>選擇【SSL Proxying(SSL代理)】,點擊安裝【Install Charles Root Certificate On a Mobile Device or Remote Browser

意思是:在手機設置好代理後,在手機瀏覽器中訪問 chls.pro/ssl 下載證書,並安裝。 在手機上進行下載證書,並安裝即可。

模擬慢速網絡

在 Charles 的菜單上,選擇 "Proxy"–>"Throttle Setting" 項,在之後彈出的對話框中,我們可以勾選上 "Enable Throttling",點擊可選擇 Throttle Preset 的類型: