网络抓包工具主要有WireShark和Fiddler。前者是被动监听,无法修改HTTP REQUEST,后者则可以。本文主要介绍前者在Mac下的应用。
安装方面还是比较简单的,直接去官网下载即可。下载之后打开,会有一堆网卡选项,选择en0就是你的Mac电脑了,此时你电脑上的请求都会被WireShark监听。
我们一般拿来监听http的请求,所以可以用ip地址和http来过滤不需要的请求,因为请求中还包括tcp等其他协议的请求,太杂乱了。输入了过滤条件之后记得要按回车哦。
如果需要监听iphone的话,则需要打开终端输入:rvictl -s 设备udid。其中设备udid可以用iTunes获取。
这一步有个小坑,我第一次执行rvictls -s 提示 rvictl: command not found
。Stack Overflow上提供了两种解决方法:
- xcode没有安装
Command Line Tools
,执行命令xcode-select --install
安装一下然后重启终端,对我无效 - 进入
/usr/bin
,看有没有rvictls
安装。没有的话,进入下面两个目录,安装下两个pkg。
a.Xcode.app/Contents/Resources/Packages/MobileDevice.pkg
b.Xcode.app/Contents/Resources/Packages/MobileDeviceDevelopment.pkg
然后重启下终端,再调用rvictls -s 设备udid
就成功了。 - 如果还是不成功,就重新安装xcode,在software update里下载即可。
运行rvictls -s 设备udid成功后,页面多个rvi0的虚拟网卡。