Charles 最強技巧

簡介

Charles 是在 PC 端經常使用的網絡封包截取工具,在作移動開發時,咱們爲了調試與服務器端的網絡通信協議,經常須要截取網絡封包來分析。除了在作移動開發中調試端口外,Charles 也能夠用於分析第三方應用的通信協議。配合 Charles 的 SSL 功能,Charles 還能夠分析 Https 協議。前端

Charles 經過將本身設置成系統的網絡訪問代理服務器,使得全部的網絡訪問請求都經過它來完成,從而實現了網絡封包的截取和分析。後端

Charles 主要的功能包括:服務器

  • 截取 Http 和 Https 網絡封包。
  • 支持重發網絡請求,方便後端調試。
  • 支持修改網絡請求參數。
  • 支持網絡請求的截獲並動態修改。
  • 支持模擬慢速網絡。

同類型的工具還有 大名鼎鼎的 Fidder網絡

使用背景

在與公司 App 端📱同事 調試接口 時,有的時候可能會出現一些很是 莫名其妙 的問題。有的時候可能難以定位這個問題究竟是屬於前端展現 Bug 仍是說接口 數據異常工具

一般這個時候,可能後端就須要去服務端看日誌 而後結合日誌數據進行排查。可是限於工具 網絡等等複雜的狀況,這樣的方式其實真的蠻低效的。測試

這個時候就須要這樣的一個工具,能夠實時的看運行 App 的接口返回狀況。結合前端 視圖 展現,能在很短的時間內找到問題出現的緣由。這樣就能夠快速的修復問題了。網站

下載、破解

官網下載地址。 地址url

Charles 是收費軟件,能夠免費試用 30 天。試用期事後,未付費的用戶仍然能夠繼續使用,可是每次使用時間不能超過 30 分鐘,而且啓動時將會有 10 秒種的延時。所以,該付費方案對廣大用戶仍是至關友好的,即便你長期不付費,也能使用完整的軟件功能。spa

可是,我選擇破解 😂,我用 Charles 是來提高排查問題的時間的。結果你給我搞這些東西 我就受不了了。。。。主要仍是破解比較容易 💩。哈哈哈哈插件

破解網站

選擇當前 本身的版本 下載一個 Jar 包就能夠了。

Charles 配置

當 Charles 安裝好以後,這個時候就能夠抓取 Http 的包了,可是咱們爲 App 提供的接口 通常都是 Https 的。因此咱們須要安裝證書。

安裝證書

Help -> SSL Proxying ->Install Charles Root Certificate

image-20200906191807493

證書安裝好以後,還須要信任一下。就能夠了

Https 抓取配置

image-20200906192152105

image-20200906192430874

iPhone 抓包配置

這裏爲何是 iPhone 抓包配置,主要是由於 Android 抓包配置太麻煩了。而後 iPhone 就只須要簡單的安裝證書就能夠了。

image-20200906192702063

如上圖,點擊 Install Charles Root Certificate on a Mobile Device Or Remote Browser

image-20200906194610306

點擊以後的提示框中 192.168.1.106:8888 爲手機將要設置網絡代理的地址。chls.pro/ssl 爲手機下載證書地址。

確認手機和 電腦 在同一個網絡下,訪問 chls.pro/ssl 下載並安裝證書。然後信任證書。

安裝證書

image-20200906194657106

信任證書

設置 - 通用 - 關於本機 - 證書信任設置 - 勾選安裝的證書

image-20200906194737603

手機配置代理

在將 WIFI 的代理配置成 192.168.1.106. 這樣就能夠順利抓取到 手機的 Https 的包了。

image-20200906194818186

完成 上訴設置後,iPhone 就能夠抓包了。

Chrome 抓包配置

Chrome 抓包配置和 手機差很少,也是須要安裝插件,而後配置代理。

配置代理,在 設置 - 高級 - 代理配置中。配置爲 Charles 代理。

功能介紹

Repeat

將已執行過的請求重複執行。

應用場景,服務器壓力測試

Compose

臨時修改一些請求的參數,點擊 Execute 就能夠已修改後的請求發送。

<img src="https://atips.cn/assets/img/image-20200906200920257.png" alt="image-20200906200920257" style="zoom:50%;" />

Rewrite

Rewrite 功能功能適合對某一類網絡請求進行一些正則替換,以達到修改結果的目的

<img src="https://atips.cn/assets/img/image-20200906200850447.png" alt="image-20200906200850447" style="zoom:50%;" />

Map Remote Config

地址從定向,將訪問 A 服務器的請求 代理到 訪問 B 服務器

<img src="https://atips.cn/assets/img/image-20200906200704642.png" alt="image-20200906200704642" style="zoom:50%;" />

Map Local Config

將指定請求的 響應 替換爲 本地文件

<img src="https://atips.cn/assets/img/image-20200906200806371.png" alt="image-20200906200806371" style="zoom:50%;" />

本文由博客羣發一文多發等運營工具平臺 OpenWrite 發佈
相關文章
相關標籤/搜索