监测移动设备的HTTP请求

来源:互联网 发布:javascript hmacsha1 编辑:程序博客网 时间:2024/05/16 10:32

在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

原创粉丝点击