您的位置:首页 > 移动开发 > Android开发

Android开发中如何使用抓包工具Fiddler更改后台接口数据

2017-12-04 15:14 1196 查看

1.什么是Fiddler

Fiddler是一个使用 C# 编写的 http 抓包工具。它使用灵活,功能强大,支持众多的 http 调试任务,是 web、移动应用的开发调试利器。

HttpwatchFirebug 这些抓包工具一样,Fiddler 够记录客户端和服务器之间的所有 http 请求,可以针对特定的 http 请求,分析请求数据、设置断点等。

但 Fiddler 更为强大的是,它还可以修改请求的数据,甚至可以实现请求自动重定向,从而修改服务器返回的数据。

Fiddler 使用也十分方便。在打开 Fiddler 的时候,它就自动设置好了浏览器的代理,通过改写 http 代理,让数据从它那通过,来监控并且截取到数据。当关闭 Fiddler 的时候,它又自动帮你把代理还原。

下载地址:https://www.telerik.com/download/fiddler

2.走进Fiddler



前面介绍了Fiddler是web、移动应用的开发调试利器。所以,打开Fiddler请求网页,左边的接口列表区域就会显示你所请求的每个接口。

点击左侧列表中的某个请求,在右侧的Inspectors功能菜单下就可以看到该接口非常详细的请求、返回数据。



如果只想要看到自己app请求的接口信息,则可以使用Fiters进行过滤。

Zone:指定只显示内网(Intranet)或互联网(Internet)的内容

Host:指定显示某个域名下的会话

这里以jianshu.com为例。



如果想修改服务器返回的接口数据,则可以使用AutoResponder功能。

3.改变接口返回的数据

AutoResponder 允许你拦截指定规则的请求,并返回本地资源或 Fiddler 资源,从而代替服务器响应。通常我们在开发App项目的初期,如果出现App端前期工作已经做完了,但服务器端接口联调通过但数据不够完善。这时我们就可以通过Fiddler来修改服务器返回的接口数据了。当然Fiddler还有很多用处,比如某个App在某种情况下限制你进入,那么可以尝试用Fiddler修改接口数据。

配置





这里默认端口号是8888,重启Fiddler。然后要求手机和电脑连接到同一网络,Windows系统可以通过cmd-ipconfig查看到ip地址。假设电脑的IP是192.168.1.1,将手机中wifi设置为如下图所示



接着打开手机浏览器请求http://192.168.1.1:8888,在打开的页面中点击“FiddlerRoot certificate”。



然后在AutoResponder 项中勾选以下两个。第一个复选框的作用是开启或禁用自动重定向功能。

第二个复选框的作用是不理会那些没满足我们处理条件的请求。



配置完成,现在开始对接口的数据进行修改替换。从左边选择一个你想要修改返回数据的接口,点击Add Rule就会自动显示在右边区域,直接按住左边不放拖过来也行。



接着添加一个你希望返回的json数据文件,用于替换掉服务器接口返回的数据。用Notepad++创建一个uesrinfo.txt文件作为接口返回数据。



点击Find a file,选中userinfo.txt。到此,大功告成!



最后,打开App,请求接口,看下Android Studio中返回的数据是否发生了改变。



文中部分内容参考:http://www.hangge.com/blog/cache/detail_1697.html

感谢您的阅读!欢迎指正!
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐