您的位置:首页 > 理论基础 > 计算机网络

利用Fiddler对Android模拟器网络请求进行抓包

2017-07-03 10:50 363 查看
在Android的开发调试过程中,特别是针对网络编程的情况,很多时候我们希望能够对Android的网络请求进行抓包,用来定位以及分析我们程序的问题。下面我介绍使用Fiddler对Android模拟器的网络请求进行抓包的方法。

Fiddler介绍

Fiddler是一个http协议调试代理工具,它能够记录并检查所有你的电脑和互联网之间的http通讯,设置断点,查看所有的“进出”Fiddler的数据(指cookie,html,js,css等文件,这些都可以让你胡乱修改的意思)。
Fiddler 要比其他的网络调试器要更加简单,因为它不仅仅暴露http通讯还提供了一个用户友好的格式。


安装使用Fiddler

下载安装Fiddler的方法这里就略过了,一路Next就行了。装好之后运行软件,正常情况这个时候我们已经可以对电脑的网络请求进行抓包了。Fiddler默认的代理地址是127.0.0.1,端口是8888。此时打开IE浏览器,默认是通过代理地址上网的,所以可以对所有网络访问抓包。


对Android模拟器网络请求抓包

我使用的Android模拟器是Genymotion模拟器,使用Android原生模拟器的朋友,其使用方法大体相同,不同之处会标明。


1.打开模拟器设置(Settings),点击Wi-Fi。



模拟器设置界面


2.长按WiredSSID,选择Modify network(修改网络)



修改网络设置


3.勾上Show advanced options,输入代理服务器地址和端口(关键)。



输入代理地址

注意:代理地址和端口的设置是关键,Genymotion模拟器中ip为10.0.3.2,Android模拟器中ip为10.0.2.2,端口为FIddler监听的端口,默认为8888,最后保存确认。


Android模拟器网络请求抓包测试

经过以上的设置,Fiddler就可以抓包到Android模拟器的网络请求了。使用Android原生浏览器打开网页,测试通过。



测试Android网络访问



Fiddler抓包结果

今天的介绍就到此为止了,以上只是Fiddler的基本使用,其实还有域名过滤呀之类的,朋友们可以在使用的过程中自己摸索,我后面会再写一篇更加详细的Fiddler使用介绍,觉得有用的朋友请点个赞,谢谢!


最后打一个广告

纯净日报 https://github.com/laucherish/PureZhihuD

一个采用 RxJava + Retrofit + OkHttp 框架实现的开源软件



纯净日报界面

原文地址:http://www.jianshu.com/p/7135afa4a828 转载请注明出处
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: