截获智能手机发出的HTTP包有什么用?.
用处一: 手机软件程序员利用Fiddler,可以截获手机发出的HTTP包, 从而调试程序
用处二: 软件测试人员用于测试智能手机上的软件。
用处三: 可以用来在App应用商店中刷排名
用处四: 截获了HTTP/HTTPS后,你想干什么就干什么,比如修改Request,或者Response.
前提:
1.必须确保安装fiddler的电脑和手机在同一个wifi环境下
备注:如果电脑用的是台式机,可以安装一个随身wifi,来确保台式机和手机在同一wifi环境下
配置fiddler
打开Fiddler, Tools-> Fiddler Options 。 (配置完后记得要重启Fiddler).
选中"Decrpt HTTPS traffic", Fiddler就可以截获HTTPS请求
选中"Allow remote computers to connect". 是允许别的机器把HTTP/HTTPS请求发送到Fiddler上来
Tools->Fiddler Options->Connections
说明:1.Fiddler listens on port是手机连接fiddler时的代理端口号,默认8888即可
2.Allow remote computers to connect是允许远程发送请求,需要勾上
Tools->Fiddler Options->HTTPS
说明:勾上Decrypt HTTPS traffic,会抓到手机的https请求,如果想抓到https请求还需要在手机安装证书,下面会介绍
【fiddler设置后一定要把fiddler重启一下才会生效】
手机上的配置
1.需要安装fiddler证书
使用手机浏览器访问http://【电脑IP地址】:【fiddler设置的端口号】,既可以下载fiddler的证书并安装
【查看电脑IP的方法,直接在cmd下ipconfig,或者鼠标滑过fiddler的online也可以看到IP地址】
我的 地址是:http://192.168.2.4:8888/
8888就是刚才我们设置的端口
手机打开网址后点击 “FiddlerRoot certificate” 下载证书
Fiddler Echo Service
GET / HTTP/1.1
Host: 192.168.2.4:8888
Proxy-Connection: keep-alive
Upgrade-Insecure-Requests: 1
User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/86.0.4240.198 Safari/537.36
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.9
Accept-Encoding: gzip, deflate
Accept-Language: zh-CN,zh;q=0.9
This page returned a HTTP/200 response
Originating Process Information: 360se:15340
To configure Fiddler as a reverse proxy instead of seeing this page, see Reverse Proxy Setup
You can download the FiddlerRoot certificate
注意:
有的手机在安装证书后,会提示输入证书名称,随便写一个就行
2.手机设置wifi的代理
连接与电脑相同的wifi,修改wifi的网络,手动设置代理,代理服务器主机名为电脑的IP地址,代理端口为在fiddler里设置的端口号,保存后,fiddler将能够收到手机上的请求信息
注意:电脑和手机必须保证在同一个网络
步骤:设置》wifi》点击当前wifi名称》高级设置》
代理:手动
代理服务器主机名:192.168.2.4
代理服务器端口:8888
--------------
代理:手动
代理服务器主机名:你电脑的IP
代理服务器端口:fiddler设置的端口号
以上就是配置方法,其他的就可以直接用了,比如在fiddler里进行一下请求的过滤,只看某个服务器下的请求,配置后要点一下Actions来保存过滤
在测试中可能会有测试环境,测试环境有的公司时域名相同,但是hosts不同,通过不同的服务器IP地址指向来确定是什么环境。在PC测试上可以非常方便的更改本机hosts指向来切换测试环境和线上环境,在手机上更改hosts比较麻烦。这时候就可以利用fiddler来连接手机,更改电脑的hosts,来实现手机连接测试环境的操作。
注意:
1.手机配置了代理,fiddler必须启动,手机才可以上网,如果fiddler关闭后手机是不可以联网了,需要将代理去掉才可以进行联网。
2.fiddler启东时,会默认将Internet的代理更改为127.0.0.1,在正常退出fiddler时代理会恢复为原来的代理。但是如果遇到fiddler不正常退出(比如进程直接杀掉),会导致代理没有恢复的情况,这是需要手动修改Internet的代理(恢复为原来的代理或者取消代理)
设置Internet代理的方法如下:
文章参考
使用fiddler对手机上的程序进行抓包
https://www.cnblogs.com/mmz-tester/p/11125007.html
Fiddler (四) 实现手机的抓包
https://www.cnblogs.com/TankXiao/p/3063871.html