Charles抓包工具測驗實戰教程
學習準備
- 有功能測驗經驗
- 需求
- 測驗用例
- 測驗工具
- 測驗方法
- 熟悉介面測驗
- 介面概念
- 介面測驗
目標
- 能夠用Charles來分析前后端的問題
- 能夠用Charles模擬弱網測驗環境(弱網:網路不好的情況,或者實作2g,3g情況)
- 能使用Charles的斷點構建一場的測驗場景(針對特殊測驗場景,通過修改請求引數以及修改回傳引數)
文章介紹
- Charles介紹
- Charles安裝和配置
- Charles實戰
Charles介紹
Charles是什么?
Charles中文名叫青花瓷是一個基于http協議的代理服務器,通過成為電腦或者瀏覽器的代理,然后截取請求和請求結果達到分析抓包的目的
特點:跨平臺,半免費
Charles作業原理?

- 前置步驟:
- 需要運行Charles并配置代理
- 在客戶端上面需要配置代理
- 步驟
- 有客戶端發送請求
- Charles接收再發送給服務器
- 服務端回傳請求結果給Charles
- 由Charles轉發給客戶端
Charles能做什么?
- 支持HTTP及HTTPS代理
- 支持流量控制
- 支持介面并發請求
- 支持重發網路請求
- 支持斷點除錯
Charles簡介
對比fiddler
- Charles能夠支持Linux, MacOs
- Charles支持按域名和按介面查看報文,簡潔明了
- Charles支持反向代理
- Charles網路限速可選擇網路型別
- Charles可以決議AMF協議
Charles安裝和配置
下載地址:https://www.charlesproxy.com/
安裝程序不難,要是那裝不明白的話,多下載幾遍qq或者微信然后安裝一下就可以舉一反三了
Charles組件介紹

Charles主導航欄介紹
-
清除請求資料 -
開始/取消抓包 -
開/關ssl代理 -
開啟/關閉慢速網路 -
開啟/關閉斷點設定 -
請求資料 -
重新發送請求 -
校驗回傳的請求 -
工具 -
設定 -

-

-


Charles代理配置
- 首先Proxy > Proxy Settings
* 點開之后默認的埠號會是8888,這里我們不做修改,但作業中如果有不同埠的話需要及時進行調整

Charles訪問控制
-
首先點開Proxy > Access Control Settings

-
點開后

這里講解一下點擊add會讓你添加ip這個ip只的就是你使用設備代理到抓包電腦的的ip,一般來講就是你需要被抓包的設備的ip

當然我這里所填寫的192.168.100.1就是我需要被抓包的設備ip,這里一般情況下需要保證被抓包設備已經是和您抓包的設備在同一網路內或者在您抓包設備的子網中,這里如果有不明白的話,可以去打字的看一下計算機網路相關知識.

我們在上上圖中會發現這樣一行字,大致的意思就是
- 當你勾選之后您的抓包設備配置了對應的代理網路ip和埠可以對應您抓包設備的ip和您之前在proxy settings中配置的埠相同時,他會向您詢問是否將新的被抓包設備ip加入到ip range中
- 如果您不勾選的話那么,如果您不手動添加ip的話,那么是沒有辦法直接允許使用代理網路的
-
當配置完對應的是沒辦法馬上就可以進行抓包的這時候我們要進行下面的操作設定對應系統的代理才可以進行有效合理的抓包
windows代理設定
-
在對應的瀏覽器中進入設定,這里推薦使用chrome,在地址欄中輸入
chrome://settings/這個地址僅限于chrome瀏覽器
-
在搜索框中輸入“代理”

-
點擊“打開您計算機的代理設備”

-
在手動設定代理中開啟代理
-
在地址輸入框中輸入您抓包設備的IP地址以及埠
-
點擊“保存”,關閉頁面
注意??: 如果您的抓包設備和您被抓包的設備是同一臺的win電腦的時候默認情況下,charles會默認配置好的,但是如果不是同一臺win的話那么就需要一以上的操作
mac代理設定
待更新(9.14)
mac快捷代理設定
待更新(9.14)
ios代理設定
-
首先打開設定

-
然后打開wifi(一般情況下是wifi除非您使用了usb或者藍牙共享網路,這種騷操作暫時不討論)

-
接下來點擊已經鏈接上的wifi后面的小感嘆號

-
拉到最下面點擊 : HTTP代理>配置代理 > 選擇手動然后在下方填寫,您Charles運行的設備的ip以及您proxy setting中的埠號

-
完活!
andriods代理設定
待更新手里沒有安卓手機暫時f*ck(9.14)
Charles實戰!!!
抓包問題分析
- 前端?
- 后端?
模擬具體實戰問題:
假如在某一個系統中進行了點擊某個按鈕后回傳以下兩種提示資訊:
- 資料例外
- 彈出兩次資料例外
實施的具體步驟首先: Charles代理配置>客戶端代理配置>操作客戶端軟體>分析請求資料
使用抓包工具,根據請求資料來判斷是否為前端還是后端問題…此處詳解等待本周休息日我寫一個模擬案例之后截圖進行講解(9.16日之前)
https抓包
-
首先判斷Charles是否可以進行https抓包
-
我們打開https://azang.blog.csdn.net
![[外鏈圖片轉存失敗,源站可能有防盜鏈機制,建議將圖片保存下來直接上傳(img-MaZcgWIf-1631544958989)(Charles%E6%8A%93%E5%8C%85%E5%B7%A5%E5%85%B7%E6%B5%8B%E8%AF%95%E5%AE%9E%E6%88%98%E6%95%99%E7%A8%8B.assets/image-20210913223244611.png)]](https://img.uj5u.com/2021/09/14/2644871412114429.png)
-
這里說明我們是可以抓到https的報文的,但是因為「粗淺的解釋:HTTP是超文本傳輸協議,資訊是明文傳輸,HTTPS是具有安全性的SSL加密傳輸協議,所以HTTPS被報文被進行了加密」,所以對于Charles需要進行的一定的配置. 這里的解決方案就是安裝SSL證書
—未完待續
-
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/299966.html
標籤:其他
上一篇:Jmeter的基本使用
下一篇:微信小程式使用sass
