監測移動設備的HTTP請求

在PC上監測web頁面的HTTP請求是一件非常簡單的事,我們有大量的軟件可以來做,甚至瀏覽器就自帶了有這樣功能的開發插件。但是在移動設備上就沒那麼簡單了,沒有軟件,權限控制……下面將介紹2種監測移動設備HTTP請求的方式。

一、使用Charles

在連上WIFI的前提下,android和ios設備都可以通過Charles來監測HTTP請求,原理是通過Charles在PC上架設一個代理,手機訪問這個代理,Charles記錄網絡請求。ios設備,在“設置”-“無線局域網絡”裏可以直接設置代理,而android沒有設置代理的功能,需要取得root權限後安裝第三方軟件來實現。

操作步驟:

  1. 下載Charles(http://www.charlesproxy.com/download/),安裝完成後打開軟件
  2. 通過菜單上的“Proxy”-“Proxy Settings…”,進入代理設置見面
  3. “Port”填默認的“8888”即可,勾選“Enable transparent HTTP proxying”,點“OK”確認
  4. 設置手機的代理,端口(Port)寫Charles中的端口設置,即“8888”,IP填你PC的IP地址
  5. 用手機發起任意HTTP請求,Charles會彈出一個提示框,點“Allow”,好了HTTP請求都出現在Charles裏了

全選所有請求,並選擇右側的“Chart”選項卡就能看到整個HTTP請求瀑布圖了:

Android手機設置代理的方式:

  1. 安裝“z4root”軟件,進入軟件後選擇第二項,等待一段時間後,自動重啓,取得root權限完成
  2. 安裝“Transparent Proxy”,進入“Proxy Host”設置PC的IP地址,進入“Proxy Port”設置端口號,即“8888”,勾選“Proxy”,設置完成

二、使用TCPDUMP和Wireshark

Android手機,可以使用TCPDUMP輸出網絡請求的LOG文件,然後用Wireshark打開該文件,進行統計分析。

操作步驟:

  1. 下載TCPDUMP(http://www.strazzere.com/android/tcpdump),放到D根目錄盤下
  2. 下載安裝Wireshark(http://www.wireshark.org/)
  3. root手機,方法如上所述
  4. 用usb連上手機
  5. 打開命令行工具CMD,依次輸入如下命令:
  6. adb push d:\tcpdump /data/local/tcpdump
  7. adb shell chmod 6755 /data/local/tcpdump
  8. adb shell tcpdump -p -vv -s 0 -w /sdcard/capture.pcap -Z root
  9. 停止抓包:按Ctrl+c
  10. 導出抓包得到的文件到d盤根目錄:adb pull /sdcard/capture.pcap d:/
  11. 雙擊capture.pcap文件,wireshark啓動


轉自:http://www.zhouqicf.com/others/mobile-network-requests-monitor

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章