使用Fiddler抓取模拟器APP的请求,并转发到本地调试

                     

一、起因

在调试服务端的接口时,往往无法模拟出手机发送的请求(设备ID等),因此我们使用模拟器来代替真实手机环境。此外,我们还要把请求转发到本地的服务端才方便我们调试。

二、下载与安装

1.Fiddler
2.海马玩模拟器(使用其他模拟器或者真实手机亦可)
3.安装apk

三、配置

1.设置Fiddler请求监听规则

Tools -> Telerik Fiddler Options -> HTTPS选项卡
勾上Capture HTTPS CONNECTs和Decrypt HTTPS traffic这两项,建议勾上Ignore server certificate erros (unsafe)
使用Fiddler抓取模拟器APP的请求,并转发到本地调试
Connections选项卡
勾上Allow remote computers to connect这项
记住Fiddler listens on port监听端口8888(等下会用到)
使用Fiddler抓取模拟器APP的请求,并转发到本地调试
设置完必须重启Fiddler

2.设置Fiddler请求转发规则

Tools -> HOSTS…
勾上Enable remapping of requests for one host to a different host or IP, overriding DNS.
下面填写示例:NewIP/Host(去向)   OriginalURLHost(来源)
这里相当于把来自www.xishanju.com的所有请求都转发到localhost:8080这里去,就达到我们本地调试的目的
使用Fiddler抓取模拟器APP的请求,并转发到本地调试

3.查询主机内网IP

cmd -> ipconfig
记下我的内网IP是10.20.72.179(等下有用)
提示:电脑要和模拟器(手机)在同一个局域网内
使用Fiddler抓取模拟器APP的请求,并转发到本地调试

4.设置模拟器网络代理

以最新版海马玩浏览器为例,我的桌面 -> 系统应用 -> 设置 -> 无线和网络 -> Wi-Fi -> WiredSSID 长按 -> 修改网络
勾上显示高级选项,代理设置为手动,代理服务器主机名填刚才的内网IP,代理端口填写8888,其他保持默认。
使用Fiddler抓取模拟器APP的请求,并转发到本地调试
使用Fiddler抓取模拟器APP的请求,并转发到本地调试

四、调试

这里没有什么好演示的,我们可以把需要调试的请求用颜色Mark一下方便区分,然后选中那条请求按shift+delete把其余的请求删了方便浏览
使用Fiddler抓取模拟器APP的请求,并转发到本地调试
在eclipse debug运行我们的本地程序,然后打断点,在回到Fiddler里把请求Replay一下就可以了
done…


自从去了实习后好久没更新过博客了,这个文章也是在工作中遇到了总结出来的,之后会更新一些其他类型的文章,譬如springboot,qt等等

使用Fiddler抓取模拟器APP的请求,并转发到本地调试

           

再分享一下我老师大神的人工智能教程吧。零基础!通俗易懂!风趣幽默!希望你也加入到我们人工智能的队伍中来!http://www.captainbed.net

使用Fiddler抓取模拟器APP的请求,并转发到本地调试
                     

一、起因

在调试服务端的接口时,往往无法模拟出手机发送的请求(设备ID等),因此我们使用模拟器来代替真实手机环境。此外,我们还要把请求转发到本地的服务端才方便我们调试。

二、下载与安装

1.Fiddler
2.海马玩模拟器(使用其他模拟器或者真实手机亦可)
3.安装apk

三、配置

1.设置Fiddler请求监听规则

Tools -> Telerik Fiddler Options -> HTTPS选项卡
勾上Capture HTTPS CONNECTs和Decrypt HTTPS traffic这两项,建议勾上Ignore server certificate erros (unsafe)
使用Fiddler抓取模拟器APP的请求,并转发到本地调试
Connections选项卡
勾上Allow remote computers to connect这项
记住Fiddler listens on port监听端口8888(等下会用到)
使用Fiddler抓取模拟器APP的请求,并转发到本地调试
设置完必须重启Fiddler

2.设置Fiddler请求转发规则

Tools -> HOSTS…
勾上Enable remapping of requests for one host to a different host or IP, overriding DNS.
下面填写示例:NewIP/Host(去向)   OriginalURLHost(来源)
这里相当于把来自www.xishanju.com的所有请求都转发到localhost:8080这里去,就达到我们本地调试的目的
使用Fiddler抓取模拟器APP的请求,并转发到本地调试

3.查询主机内网IP

cmd -> ipconfig
记下我的内网IP是10.20.72.179(等下有用)
提示:电脑要和模拟器(手机)在同一个局域网内
使用Fiddler抓取模拟器APP的请求,并转发到本地调试

4.设置模拟器网络代理

以最新版海马玩浏览器为例,我的桌面 -> 系统应用 -> 设置 -> 无线和网络 -> Wi-Fi -> WiredSSID 长按 -> 修改网络
勾上显示高级选项,代理设置为手动,代理服务器主机名填刚才的内网IP,代理端口填写8888,其他保持默认。
使用Fiddler抓取模拟器APP的请求,并转发到本地调试
使用Fiddler抓取模拟器APP的请求,并转发到本地调试

四、调试

这里没有什么好演示的,我们可以把需要调试的请求用颜色Mark一下方便区分,然后选中那条请求按shift+delete把其余的请求删了方便浏览
使用Fiddler抓取模拟器APP的请求,并转发到本地调试
在eclipse debug运行我们的本地程序,然后打断点,在回到Fiddler里把请求Replay一下就可以了
done…


自从去了实习后好久没更新过博客了,这个文章也是在工作中遇到了总结出来的,之后会更新一些其他类型的文章,譬如springboot,qt等等

使用Fiddler抓取模拟器APP的请求,并转发到本地调试