Charles_N:HTTP請求響應監聽工具
- Charles:HTTP請求響應監聽工具使用說明.doc
1. 介紹
Charles是一個HTTP代理伺服器,HTTP監視器,反轉代理伺服器.它允許一個開發者檢視所有連線網際網路的HTTP通訊.這些包括request,response現HTTP headers (包含cookies與caching資訊)。
Charles是一個簡單的基於HTTP協議傳輸的除錯工具,在開發和測試工作扮演著重要的角色。
Charles具有介面簡單直觀,易於上手,資料請求控制容易,修改簡單,抓取資料的開始暫停方便等優勢。
注意:該軟體在特殊情況下會出現劫持瀏覽器導致無法瀏覽網頁的問題(請謹慎使用)。
2. 下載與安裝
l 首先需要下載java的執行環境支援。
3. 顯示模式
charles抓包的顯示,支援兩種模式,Structure和Sequence,其優點分別如下。
3.1 Structure模式
Structure模式如下圖 優點:可以很清晰的看到請求的資料結構,而且是以域名劃分請求資訊的,可以很清晰的去分析和處理資料。
3.2 Sequence模式
Sequence模式如下圖 優點:可以很清晰的看到全部請求,不用一層一層的去點開,這裡是以資料請求的順序去執行的,也就是說那個請求快就在前面顯示。
4.PC端資料包抓取
pc端可以使用Charles抓取http、https協議的請求,不支援socket。charles會自動配置IE瀏覽器和工具的代理設定,所以說開啟工具直接就已經是抓包狀態了。這裡開啟百度抓包下,工具介面和相關基礎功能如下圖所示:
上圖中的7個位置是最常用的幾個功能。
1. 那個垃圾桶圖示,功能是clear,清理掉所有請求顯示資訊。
2. 那個望遠鏡圖示,功能是搜尋關鍵字,也可以使用ctrl+f實現,可以設定搜尋的範圍。
3. 圓圈中間紅點的圖示,功能是領抓去的資料顯示或者不顯示的設定。這個是charles工具很方便的一個兩點,一般都使其為不顯示抓去狀態,只有當自己測試的時候的前後,在令其為抓取並顯示狀態。這樣可以快準狠的獲取到相關自己想要的資訊,而不必在一堆資料請求中去尋找。
4. 編輯修改功能,可以編輯修改任意請求資訊,修改完畢後點擊Execute就可以傳送一個修改後的請求資料包。
5. 抓取的資料包的請求地址的url
6. 抓取的資料包的請求內容的資訊顯示。
7. 相應資料內容資訊的顯示
其中5、6、7中都有各種形式的資料顯示形式,其中raw是原始資料包的狀態。
5.其它常用功能
5.1請求重發功能
選擇請求後,右鍵可以看到一些常用的功能,這裡說說Repeat 就是重複發包一次。然後Advanced Repeat就是重複發包多次,這個功能用來測試簡訊轟炸漏洞很方便。
5.2指定錄製、排除錄製功能
開啟Proxy –> Proxy Settings
l 指定錄製
l 排除錄製
6.charles使用問題彙總
Charles是一款很好用的抓包修改工具,但是如果你不是很熟悉這個工具的話,肯定會遇到各種感覺很莫名其妙的狀況,常見問題說明如下。
1. 為什麼下載了不能用?打不開啊。
因為charles是需要java環境才能執行的,需要先安裝java環境才可以。
2. 為什麼我用著用著就自動關閉了?大概30分鐘就會關閉一次。
因為charles如果沒有註冊的話,每次開啟後就只能喲個30分鐘,然後就會自動關閉,所以最好在使用前先按照說明去進行工具的註冊操作。
3. 為什麼我用charles不能抓到socket和https的資料呢?
charles是不支援抓去socket資料的。如果抓不到https的資料的話,請檢視你是不是沒有勾選ssl功能。Proxy –> Proxy Settings –> SSL 設定
4. 抓包後發現form中有些資料顯示是亂碼怎麼辦?
請在Raw模式下檢視,Raw模式顯示的是原始資料包,一般不會因為編碼問題導致顯示為亂碼。
5. 為什麼我用IE可以抓到資料,但是用360或者谷歌瀏覽器就不行?
請確保360或者谷歌的程式碼設定中是不是勾選設定的是 使用IE代理。
6. 想要複製貼上某些資料的話,怎麼辦,右鍵沒有相應功能啊?
請直接使用Ctrl +C 和Ctrl+V 即可。
7. 為什麼用了charles後,我就上不了網頁了,但是qq可以。
因為如果charles是非正常狀態下關閉的話,那麼IE的代理就不會被自動取消,所以會導致這種情況。
解決辦法:
第一種:直接開啟charles,然後再正常關閉即可。 第二種:去將IE瀏覽器代理位置的勾選去掉。
關注“碼農社團”微信公眾號,回覆“charles”即可獲取到安裝包和使用手冊 堅持最初的執著,從不曾有半點懈怠,為優秀而努力,為證明自己而活。