網絡抓包工具Charles使用

在作Android應用開發時,幾乎每一個項目都會涉及到與服務器打交道,也就是少不了與服務端人員的接口調試過程,在開發過程當中對於接口的調試能夠很簡單的用debug既可很清楚知道客戶端發送的和服務端返回的數據是否正常,可是更加通用直觀的方式則是經過網絡抓包工具來進行,由於當導出apk以後,就沒辦法debug了,這時用抓包工具就很是方便,打開app點擊與服務端請求的地方就能看到,而不用鏈接USB數據線去查看log,網絡抓包工具市面上有不少種,根據我的的喜愛選擇一款既可,這裏我在工做中使用的是Charles,也就是這篇博文要對其進行介紹的,話很少說,讓咱們開始使用它吧~~~服務器

第一步:安裝網絡

首先上它的官網進行下載:http://www.charlesproxy.com/,具體介紹能夠查看官網介紹,下面貼一張其官方介紹:app

我下載的是這個版本:工具

安裝完以後,是須要註冊碼的,具體能夠在網上進行找,我這個版本相關的註冊碼能夠從這個連接中獲得:佈局

http://www.hiyoufu.com/?p=290測試

安裝好以後,打開界面以下:網站

固然如今還不能抓包,緊接着須要進行配置,請看下一步。spa

第二步:配置debug

首先得保證手機鏈接的網絡和電腦鏈接的網絡須要在一個網段中,這是必要條件,若是不在則就沒法達到抓包的目的,表現以下:3d

手機端:

電腦端:

從中能夠看到,這兩個ip都是在同一個網段中的,這個切記~

緊接着須要給手機設置代理,具體步驟以下:

怎麼給網站設置代理這裏就很少說,仍是列出其步驟:

長按已鏈接網絡調出修改網絡對話框:

點擊進入網絡設置界面:

勾選"顯示高級選項":

將代理選爲"手動":

下面就正式對其手機設置代理,那裏面的代理選項怎麼填寫呢,請睜大眼睛:

因此設置該選項以下:

緊接着設置第二項:

那該端口號設置成多少呢?它來自於Charles軟件代理設置中,以下:

因此,手機代理端口設置以下:

好了,到此爲止代理設置已經設置完成。

【注意】:其它選項都保持默認既可。

當一切設置都就緒以後,下面就能夠驗證了,請繼續看下面。

第三步:驗證

在驗證以前,須要切換一下Charles佈局以下:

下面開始打開咱們的app,點擊一下,看是否被電腦上抓到了,因爲很差錄屏,因此這裏就用靜態圖片表示一下,不用動態方式來展示了,能知道意思就成:

 

那若是我想查看請求時攜帶的數據是否正常,能夠經過下面來查看:

 

而服務器返回的數據也可能查看:

 這樣就很方便客戶端與服務端進行排查錯誤,另外還有一個小技巧分享,因爲此工具會抓取全部聯網的地址,可是對於開發者而言可能只會關心與本身項目接口相關的地址,那麼能夠進行地址過濾,以下:

 

因而能夠進行過濾:

【注意】:有時可能會抓取不到,我本身也碰到過這種狀況,這時將工具關了從新啓動一下就能夠了。

修改請求和返回數據:

在實際工做中,可能會有這樣的一個場景,就是這個接口返回數據會有多個條件,而在開發時爲了測試不去麻煩服務端的去改數據來模擬各個業務條件,能夠在本地代碼中寫死來模擬,而對於QA而言在測試時不可能給他們打多個條件的包,因此最好是直接更改接口返回的接口來模擬各類條件的請求,而Charies能夠很方便的模擬,下面來講明下:

 

接着須要對添加的斷點稍加設置一下:

點擊確認以後,接下來就能夠請求該接口,在服務器返回數據的時候,則會停住,供咱們去修改裏面的數據去模擬:

這時,咱們爲了方便測試,修改一下服務器返回的數據來測其它條件:

若是想修改請求的數據,則方法相似,只是須要將這個勾上既可:

至此,關於它的基本使用就到此結束,基本上知道這些就能夠了,下回見~

相關文章
相關標籤/搜索