抓包工具Charles的簡單使用

鋸齒流沙發表於2017-12-14

工欲善其事必先利其器,作為開發者一定要會使用工具來增加技能和提升自身價值,平時開發中抓包是我們必不可少的工具,我們可以使用抓包工具來除錯我們的程式,也可以使用抓包工具來分析軟體使用的協議,如果我們想仿造別人的軟體,又懶於寫伺服器的程式碼或者不懂伺服器程式設計,也可以使用我們的抓包工具獲取別人軟體的資料(竊取資料不提倡),因此懂得會使用抓包工具在我們開發中顯得尤為重要的了。基於這幾點,本文為各位讀者介紹比較主流的抓包工具——Charles,由於我也是使用的次數不超過十次,所以本文教讀者簡單使用,文章不會太難懂,但是讀者讀完該文章基本能夠會使用Charles抓取資料來分析。

簡介

Charles是一個HTTP代理/ HTTP監視器/反向代理,使開發人員能夠檢視其計算機和Internet之間的所有HTTP和SSL / HTTPS流量。 這包括請求,響應和HTTP標頭(包含cookie和快取資訊),該軟體是用Java寫的,能夠在Windows,Mac,Linux上使用。讀者也可以到Charles的官網瞭解。需要說明的一點的是這款軟體是需要不是免費的,如果沒有購買的話,有三十天的試用期,三十天過後還是可以使用,但是限時,一天使用的時間不可以超過30分鐘,而且每次開啟使用有10秒鐘的延遲。

使用

下載安裝軟體,這些步驟,不需要詳說了。下載的話,可以在官網下載,也可以百度下載,貌似百度有破解版本的,讀者可以自行下載安裝。

Charles

由於我的是試用版,所以每次開啟都會有十秒鐘的延遲。

設定代理

PC端抓包,Charles支援抓去http、https協議的請求,但是不支援socket。在PC下charles會自動配置IE和工具的代理設定,開啟工具就直接抓包了。但是抓取移動端的 資料,就需要設定代理。

Charles.png

如圖,開啟Proxy->ProxySetting。

Charles.png

需要設定埠號,並且Enable需要勾上。

檢視電腦IP

Help--->Local IP Adress:

Charles.png

Charles

做好了上述步驟之後需要在手機上設定代理。

手機上設定代理

開啟手機設定-->然後知道使用的網路-->代理設定

Charles

選擇手動設定

Charles

伺服器和埠號要跟Charles中一樣的。

完成了以上的步驟就可以使用Charles來抓取移動端的資料了。

Charles.png

以上就是我開啟UC頭條,抓取到的資料。在Overview中我們看到URL,請求的響應碼,請求方法等等。

Charles

以上便是通過url獲取得到的json資料。能夠獲取到url,我們便能獲取得到json資料。

限制訪問的網速

可以通過Proxy--->Throttle Setting來設定訪問的網上,如果我們平時使用Sharles來測試服務端或者檢視UI的渲染過程,那麼這個就顯得非常有用的了。

Charles.png

Charles.png

勾選Enable然後add,新增限速的ip和埠號,然後就可以設定上傳和下載的最大速度,還可以模擬3G和4G的網速。用處還是非常大的。

使用Charles抓包,在軟體的首介面還可以在Content中檢視到抓取的資料

Charles.png

如果獲取得到的HTTPS資料是亂碼的情況,需要到官網獲取並安裝Charles的CA證照了。

通過以上的介紹,讀者應該都懂得如何使用Charles來抓包了,那麼就動起手來吧。

相關文章