背景
在开发项目中,逻辑部分需要依赖网络传输。在跟后台的数据交互中我们会遇到以下问题:
- 首先,我们定义问题时,需要判断后台返回的数据是否合理,通过抓包来分析后台数据。
- 其次,后台返回的数据不可能覆盖到所有情况,我们需要改动一些字段在自测期望的情况。
通过抓包工具可以解决上述问题。
基础抓包
这里介绍下针对fiddler抓包手机报文简单使用。通常我们使用android机做开发,在电脑端查看日志信息。
我们按以下步骤操作。
- 我们需要手机、电脑在同一个局域网中。例如,都连接“JD-access”。
- 打开fiddler需要简单设置一下,见下图
- 手机端要对wifi做下设置,如下
以上,完成后手机端的网络报文,在电脑端就可以看到了。如下图所示。
具体参考,传送门 fiddler基础抓包
过滤器
如果你已经抓到网络包了,可能会对频繁的刷屏报文感到头痛。我们只需要显示关心的报文。fiddler有强大的过滤规则。这里只介绍常用的hosts设置(根据主机名),其他的雷同具体可参考,过滤器设置.
- 在右边我们可以看到过滤器选项卡,切换到此选项卡 勾选使用筛选器。
- 选择“仅显示以下主机”,添加我们关心的host,如下图。
OK,现在我们就可以看到干净的报文数据了。
断点的使用
此功能可以动态的编辑报文。分为,中断请求、中断相应两种形式。我们在命令行输入以下指令。
bpu https://blog.csdn.net/qq_15283475/article/details //拦截请求
断点还有以下指令
- bpu [breakUrl] //拦截请求
- bpu //取消拦截请求
- bpafter [breakUrl] //拦截相应
- bpafter //取消拦截相应
当拦截到后,我们可以在右侧进行编辑处理,就可以动态修改请求或者响应报文了。
具体参考,fiddler断点
自动响应
对于频繁请求,使用中断我们会觉得很慢。有没有一种方法,可以自动响应。在fiddler中,操作如下:
- 在右侧标签页,切换到“自动响应”。按照图示操作即可。其中,规则匹配支持正则,精确等形式。
- 添加请求匹配规则。在保存时会弹出新响应的编辑窗口。编辑完成保存即可。
当匹配到该规则时,会自动响应报文,不再依赖服务器。