您当前的位置:首页 > 电脑百科 > 程序开发 > 移动端 > APP

优雅的进行远程调试APP,Fiddler+开源调试工具spy-debugger

时间:2020-12-30 12:25:48  来源:  作者:

笔者从事Web开发,不论是PC端还是App端,调试抓包都是必不可少的环节,懂前端的人都知道,PC端调试非常方便,Chrome或者火狐等浏览器等都自带了非常方便且易于使用的开发者工具,便于我们抓包调试。但是现在开发不仅仅是PC端,移动端也占了很大的比重,但是在移动端调试就没PC端这么方便了,因此就要借助第三方的抓包工具供我们调试抓包,本文就介绍两个常用的方法进行介绍,分别是Fiddler和开源的抓包工具spy-debugger!


优雅的进行远程调试APP,Fiddler+开源调试工具spy-debugger

 


Fiddler

Fiddler是一个用于HTTP调试的代理服务器应用程序,最初由微软Internet Explorer开发团队的前程序经理Eric Lawrence编写。Fiddler能捕获HTTP和HTTPS流量,并将其记录下来供用户查看。它通过使用自签名证书实现中间人攻击来进行日志记录。可以说它是一个非常强大的抓包工具,不过本文仅介绍移动端的调试!

下面我们一起来看看如何操作:

PS:Fidder软件下载可以自行搜索或者在文末获取下载方式


1、解压并打开软件压缩包,将证书插件中的文件dll拷贝到Fiddler的根目录,也就是它本身的上级目录。


优雅的进行远程调试APP,Fiddler+开源调试工具spy-debugger

 


2、打开软件后提示更新,点击否,然后点击工具=》选项,并勾选忽略服务器证书错误


优雅的进行远程调试APP,Fiddler+开源调试工具spy-debugger

 


3、然后点击连接选项卡,如下所示设置代理端口,其他选项可参考笔者设置,这是为了后面作为抓包代理所使用的


优雅的进行远程调试APP,Fiddler+开源调试工具spy-debugger

 


PS:以上操作需要重启Fiddler


4、这个地方我们作为测试,我在本地跑了一个测试的API,仅仅是一个没有任何授权的测试API


优雅的进行远程调试APP,Fiddler+开源调试工具spy-debugger

 


5、打开模拟器或者你的手机,手机需要同电脑在同一局域网络环境下,然后打开浏览器,输入你的ip+刚刚设置的端口号,下载证书,按提示安装即可


优雅的进行远程调试APP,Fiddler+开源调试工具spy-debugger

 


6、修改模拟器的网络代理


优雅的进行远程调试APP,Fiddler+开源调试工具spy-debugger

 


优雅的进行远程调试APP,Fiddler+开源调试工具spy-debugger

 


7、在模拟器浏览器重新访问刚刚测试的API,抓包成功


优雅的进行远程调试APP,Fiddler+开源调试工具spy-debugger

 


8、测试浏览器访问其他网页,都能成功抓取到


优雅的进行远程调试APP,Fiddler+开源调试工具spy-debugger

 


9、抓取酷安应用商店下载APP地址,随便打开一个APP详情页面,点击下载,成功抓取到下载链接


优雅的进行远程调试APP,Fiddler+开源调试工具spy-debugger

 


优雅的进行远程调试APP,Fiddler+开源调试工具spy-debugger

 


PS:Fiddler简单使用模拟器进行远程调试的方法就此结束,更多高级的用法需要开发者自行摸索,本文在此不在赘述!(软件获取方式在文末)


spy-debugger

spy-debugger是一个开源的抓包调试工具,它相对于Fidder来说更加简单,微信调试,各种WebView样式调试、手机浏览器的页面真机调试。便捷的远程调试手机页面、抓包工具,支持:HTTP/HTTPS,无需USB连接设备。不过得先满足一定的条件,下面我将带大家一起来安装并测试:

https://github.com/wuchangming/spy-debugger


它具备以下特性:


  • 1、页面调试+抓包
  • 2、操作简单,无需USB连接设备
  • 3、支持HTTPS。
  • 4、spy-debugger内部集成了weinre、node-mitmproxy、AnyProxy。
  • 5、自动忽略原生App发起的https请求,只拦截webview发起的https请求。对使用了SSL pinning技术的原生App不造成任何影响。
  • 6、可以配合其它代理工具一起使用(默认使用AnyProxy) (设置外部代理)

我是在windows环境下,因此演示环境是Windows,首先你得安装过了nodejs,我们使用npm安装它:

 安装:npm install spy-debugger -g

优雅的进行远程调试APP,Fiddler+开源调试工具spy-debugger

 


启动:spy-debugger

下面是一些其他启动选项,根据自己的需要自行配置:


1、端口:

(默认端口:9888)

spy-debugger -p 8888

2、设置外部代理(默认使用AnyProxy)

spy-debugger -e http://xxx:8888

spy-debugger内置AnyProxy提供抓包功能,但是也可通过设置外部代理和其它抓包代理工具一起使用,如:Charles、Fiddler。

3、设置页面内容为可编辑模式

该功能使页面内容修改更加直观方便。 (默认: false)

spy-debugger -w true

内部实现原理:在需要调试的页面内注入代码:document.body.contentEditable=true。暂不支持使用了iscroll框架的页面。

4、是否允许weinre监控iframe加载的页面

(默认: false)

spy-debugger -i true

5、是否只拦截浏览器发起的https请求

(默认: true)

spy-debugger -b false

有些浏览器发出的connect请求没有正确的携带userAgent,这个判断有时候会出错,如UC浏览器。这个时候需要设置为false。大多数情况建议启用默认配置:true,由于目前大量App应用自身(非WebView)发出的请求会使用到SSL pinning技术,自定义的证书将不能通过app的证书校验。

6、是否允许HTTP缓存

(默认: false)

spy-debugger -c true

我本地直接使用和Fiddler一样的端口8888,自动打开浏览器后点击请求调试

spy-debugger -p 8888

优雅的进行远程调试APP,Fiddler+开源调试工具spy-debugger

 


这个地方由于设置的和Fiddler一样的代理端口,因此模拟器端不必再重新设置网络


然后我们和刚才一样,同样能够进行正确的抓包调试,如下:


优雅的进行远程调试APP,Fiddler+开源调试工具spy-debugger

 


总结

本文就笔者的经验而言,介绍两种远程真机或者模拟器调试的方法,整个流程并不是很复杂,笔者也是才接触不久,在此分享给大家,希望对刚刚接触的小伙伴有所帮助!



Tags:调试APP   点击:()  评论:()
声明:本站部分内容及图片来自互联网,转载是出于传递更多信息之目的,内容观点仅代表作者本人,如有任何标注错误或版权侵犯请与我们联系(Email:2595517585@qq.com),我们将及时更正、删除,谢谢。
▌相关推荐
笔者从事Web开发,不论是PC端还是APP端,调试抓包都是必不可少的环节,懂前端的人都知道,PC端调试非常方便,Chrome或者火狐等浏览器等都自带了非常方便且易于使用的开发者工具,便于我...【详细内容】
2020-12-30  Tags: 调试APP  点击:(196)  评论:(0)  加入收藏
▌简易百科推荐
  1、明确产品的需求分析+功能  这是最基本的也是第一步,我们要明确自己或者客户真的想要开发一款app应用,其次就要了解到底要开发什么功能什么类别和种类的app应用。所...【详细内容】
2021-12-27  木子科技    Tags:App   点击:(0)  评论:(0)  加入收藏
前言目前,即时通讯在app中逐渐成了不可或缺的功能,尤其是在疫情期间,音视频会议功能更是火了一把,但是想自己开发即时通讯功能,却一点都不简单,如果用原生开发的话,那么Android、iO...【详细内容】
2021-07-29  中控易动    Tags:APP   点击:(104)  评论:(0)  加入收藏
本篇博文将会提供一个关于如何使用WebRTC建立一个视频会议App的教程。我们不会将其设计的太复杂,它将会是一个简单的一对一视频会议App,并且仅仅使用了WebRTC APIs和一些其他...【详细内容】
2021-07-29  易简视源云会议    Tags:视频会议App   点击:(113)  评论:(0)  加入收藏
开发一款app需要多少钱?这是一个比较笼统的问题,没有确切的需求,拥有不同技术经验的团队往往报价都各不相同,因为不知道开发需求,所以无法给出一个准确的价格。因此,想知道app开发...【详细内容】
2021-07-13  hey衡道    Tags:app   点击:(79)  评论:(0)  加入收藏
Hybrid APP指的是半原生半Web的混合类App。需要下载安装,看上去类似Native App,但只有很少的UI Web View,访问的内容是 Web 。 原生是Native APP,H5就是Web App在Hybrid 当中,如...【详细内容】
2021-04-28  扣丁学堂  今日头条  Tags:APP页面   点击:(289)  评论:(0)  加入收藏
介绍MIP(Mobile Instant Pages - 移动网页加速器),是一套应用于移动网页的开放性技术标准。通过提供 MIP-HTML 规范、MIP-JS 运行环境以及 MIP-Cache 页面缓存系统,实现移动网页...【详细内容】
2021-04-12  爱分享Coder  今日头条  Tags:WebApp   点击:(309)  评论:(0)  加入收藏
在开发直播APP时,核心要素和基本要素是稳定性,一般各大服务商都有提供demo,并且可以免费测试的,测试可以初步评估下稳定性,看看视频流畅度如何,卡顿是不是很频繁,延时效果怎么样,视...【详细内容】
2021-03-19      Tags:直播APP   点击:(292)  评论:(0)  加入收藏
TOKEN作为用户身份凭证并不能保证数据安全,别人通过抓包等方式很容易拿到TOKEN,带上TOKEN请求我们的API接口就能获取数据;其实换一个角度想:我们只需保证即使TOKEN被别人冒用,也...【详细内容】
2021-02-18      Tags:APP,API   点击:(229)  评论:(0)  加入收藏
在当今移动互联网盛行的时代,网络的形态除了有线连接,还有2G/3G/4G/5G/WiFi等多种手机网络连接方式。不同的协议、不同的制式、不同的速率,使移动应用运行的场景更加丰富。目前...【详细内容】
2021-02-05      Tags:APP   点击:(201)  评论:(0)  加入收藏
虽然目前许多企业都进行了长沙APP开发,开始了移动互联网转型之路,但由于其中绝大部分企业都属于传统行业,对APP应用了解并不多,故而对开发工作也不是很清楚。为了大家能更好的了...【详细内容】
2021-02-01      Tags:APP应用   点击:(214)  评论:(0)  加入收藏
相关文章
    无相关信息
最新更新
栏目热门
栏目头条