詳細Fildder抓包Android教程

賢榆的榆發表於2017-10-26

你需要的裝置:

  • 一部Android手機
  • 一臺Windows電腦

零、寫在前面

Fiddler是什麼

摘自百度百科

Fiddler是一個http協議除錯代理工具,它能夠記錄並檢查所有你的電腦和網際網路之間的http通訊,設定斷點,檢視所有的“進出”Fiddler的資料(指cookie,html,js,css等檔案,這些都可以讓你胡亂修改的意思)。 Fiddler 要比其他的網路偵錯程式要更加簡單,因為它不僅僅暴露http通訊還提供了一個使用者友好的格式。

Android需要Fidder做什麼

其實Fidder就是一個款目前市面上非常常用的抓包工具,所以我們用它自然是抓包了,不過我們抓包有時為了什麼?

就我個人目前用的而言有以下幾個目的:

  • 在和伺服器除錯時,可以幫我們檢視到資料在傳輸過程中的形式及內容。便於我們和伺服器除錯。
  • 在學習類似Retrofit或者Okhttp等開源的網路框架時,我們也可以通過抓包檢視我們配置的內容有哪些地方的更改
  • 和上面一點差不多,就是對於我們學習真個http的網路協議都是有幫助的。

如果你還有其他的妙用,歡迎留言!
說了這麼多我們開始吧!

一、配置Fidder

1. 下載Fidder

fidder官網:www.telerik.com/download/fi…

點選下載

和安裝一般軟體一樣一路next最後finish,然後你的桌面上就會出現。

那麼我們就安裝完成了!

2. 配置Fidder選項

雙擊開啟我們的fidder軟體,會看到如下的介面:

我使用的版本是4.6的,是我寫部落格時的最新版本!

我們先大致瞭解一下,整個軟體介面可以分為五個部分

  1. 選單欄,每個軟體都有,沒什麼好講的
  2. 常用工具欄,一些常用的工具固定在此欄
  3. 抓到的地址資訊
  4. 各種詳細資訊及詳細資訊切換欄
  5. 對應4中所切換的具體詳細資訊顯示檢視區域

大家也不用所有的都細緻的去了解,你特別需要用到的時候再去查相關的功能就好了!

就用fidder對Android裝置進行抓包而言,我們需要進行如下配置

  1. 點選上圖中1選單欄中的tools--》optional
    進入如下介面,勾選【Capture HTTPS CONNECTS】

這是為了截獲Https的請求

  1. 點選Connections選項,然後勾選【Allow remote computers to connect】

勾選過後會有個提示框,點選確認就好了。
然後需要將軟體退出然後重啟才會生效。

這是為了能夠捕獲遠端裝置(在這裡也就是我們Android手機)上的請求而勾選的。(IOS手機的抓包應該也是同理的,只是我沒有測試)

到這裡我們的fiddler軟體就已經基本完成了配置過程!

二、配置Android手機

首先要確保你的手機和你抓包的電腦在同一個路由下面,比如我的手機和電腦都連線著我的小米路由器(小米的工作人員自覺在下面讚賞留言哈)。電腦用網線,手機用無線連都是可以的。

確定這點很重要!

1. 檢視電腦的ip

win+R 開啟執行框

然後輸入cmd點選確認,開啟命令列輸入ipconfig

找到相應的本機ip地址

2. 配置Android手機

關於手機的配置總共有這樣六步:

  1. 連線同一個路由的wifi
  2. 開啟wifi高階選項
  3. 開啟手動http代理
  4. 配置代理伺服器主機名(上面帶大家找到電腦的ip地址)
  5. 配置伺服器埠fidder的預設埠8888(如果你前面沒有改那就是他了)。
  6. 儲存完成了

當然我還用我的錘子手機(老羅,下次跟我合個影,廣告費就不要了)。給大家錄製了一個gif圖。

三、簡單的使用

關於適用教程,其實這個就很簡單了,你前面如果都配置好了,那麼只要你在手機上開啟瀏覽器瀏覽一個網頁,fidder軟體左邊就自動出現了你所以請求的所有連線!大家也可以看一下我為大家錄製的gif圖

這就是上面的抓包過程抓到的訪問錘子官網時的所有請求,請求輪播圖的一個連結:

左邊是我的手機在電腦上的投影。右邊是fiddler軟體
軟體的左邊是抓到的所有連結,其中藍色那一條就是被我選中產看請求詳情的連結

fiddler軟體右邊的資訊就是選中連結的詳情了,上面是請求的內容,下面是返回的內容,大家可以看到,我是選擇了imageView來進行檢視的,所以能夠直接看到該連結請求到的圖片。

四、我的實際應用

前一兩天我在和伺服器除錯上傳圖片,伺服器自己寫的demo頁面能夠上傳成功
而我的始終都不能成功於是我就抓了demo和我的app請求的報文!

上圖展示的是我從fidder軟體介面右邊檢視4的位置裡面的raw選項中的資料!
然後通過對比發現,我傳圖片時的Content-Type和Demo的不一樣!

然後我改了一下就ok了!


好了這個軟體抓包教程就先介紹到這裡吧,當然肯定還沒有完,不是還有很多其他的按鈕沒有介紹嗎,那不妨你自己去點一點。看一看如果你點選json會有什麼,點選xml會有什麼?軟體右上放還有個filter核取方塊,感覺像是過濾,你要不要去試試!

其實介紹到這裡,剩下的內容,你自己去探索會學的更快一些!交給你了!

如果你喜歡歡迎關注我的微信公眾號:Android程式設計師日記

more than Android,more than code!
more than Android,more than code!

相關文章