簡單介紹
Charles官網地址:https://www.charlesproxy.com/
Charles的官網是這樣介紹自己的:
Charles是HTTP代理/ HTTP監視器/反向代理,使開發人員可以檢視其計算機與Internet之間的所有HTTP和SSL / HTTPS通訊。這包括請求,響應和HTTP標頭(其中包含cookie和快取資訊)。
Charles主要功能
SSL代理: 以純文字格式檢視SSL請求和響應
頻寬限制:以模擬較慢的Internet連線(包括延遲)
AJAX除錯:以樹或文字形式檢視XML和JSON請求和響應
AMF:以樹形檢視檢視Flash Remoting / Flex Remoting訊息的內容
重複請求:測試介面
編輯請求:測試不同的輸入
攔截和編輯請求或響應的斷點
使用W3C驗證器驗證記錄的HTML,CSS和RSS/atom響應
簡而言之,Charles主要是用來抓取請求,用來分析請求,並且可以重新構造請求。
安裝進入官網下載頁面:https://www.charlesproxy.com/download/
可以看到,Charles是跨平臺的,window、macos、linux都支援,這裡要特別說明一下,這款軟體本身是收費的,免費版,自行網上搜一下就有,畢竟我們大祖國神人多,我個人正在使用的就是免費中文版,太香啦~~~
必要的設定代理設定:開啟"代理-代理設定"頁面,設定代理埠,預設"8888",注意不要被佔用了
記錄設定:開啟"代理-記錄設定"頁面,設定需要記錄的請求和需要排除的請求,需要檢查下,因為看到很多人說抓取不到請求,就是這裡設定問題
安裝證書:開啟"幫助-SSL代理-安裝Charles Root證書",會在電腦上安裝一個證書,這裡是為了抓取http是請求做準備的,注意證書設定設定為"始終信任"
macOS Proxy:開啟"代理",勾上"macOS Proxy"
抓取PC瀏覽器請求先注意一下,這裡是紅色代表開始記錄,灰色的話點一下它
然後開啟谷歌瀏覽器,正常操作,就可以記錄到瀏覽器發出去的請求啦,如果抓不到https請求,或者抓到的包亂碼的話,那檢查一下上面的"必要設定-安裝證書"哪一步設定的不正確
選擇一個請求,可以看到這個請求的內容,可以選擇用JSON格式展示
右鍵選擇一個請求,可以看到更多操作,如"複製URL、複製請求引數、複製響應引數、重新編輯傳送請求"
抓取手機app、小程式請求首先保證手機、電腦在同一個網段內(連線同一個WIFI)
其次檢視下電腦本地IP地址,Charles上也可以檢視本地IP
設定手機代理,我這裡以iphone為例
回到電腦上,選擇"幫助-SSL代理-在移動裝置或遠端瀏覽器上安裝Charles Root證書"
再進入“設定-通用-關於本機-證書信任設定”,把這個點亮
以上工作準備完畢,就可以開始抓app和小程式的請求了
抓取app請求是一樣操作的,自己可以嘗試一下。
注意一下,如果不抓包了,記得把手機的代理關閉掉,不然連WIFI上不了網