百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 软件资讯 > 正文

程序员必备,Fiddler和spy-debugger的远程调试手机APP

ninehua 2024-11-17 19:53 192 浏览

背景

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



Fiddler

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

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

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


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



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



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



PS:以上操作需要重启Fiddler


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



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



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




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



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



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




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


启动: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


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


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



总结

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

PS:如果你没有找到Fiddler或者无法使用,可以私信 ‘Fiddler’,自动获取下载方式!

相关推荐

美国国防把360列为榜首,网友:你可以说360坏,但不能说3

刷到是缘分,感谢大家的阅读,希望您能动动小手帮忙点赞,关注,评论。你的支持和鼓励是我前进的动力。在此祝福大家天天快乐,日日开心!0102就好比你们村的流子,平时在村里嚣张跋扈,但其他村的流子想进来撒泼...

无法定位程序输入点怎么解决 教你6招搞定!

电脑的使用过程中,用户可能会遇到“无法定位程序输入点”的错误提示。这个问题通常与动态链接库(DLL)文件有关,可能会阻止程序正常运行。导致这个故障问题的原因有很多,例如系统配置、软件安装或动态链接库(...

网络打印机安装指南,让你轻松搞定【详解】

关注创盛电脑弱电知识每日获取最新行业干货和资料以下是针对各类电脑问题的解决方案,按问题类型分类整理:一、准备工作确保打印机支持有线或无线(Wi-Fi)网络连接。连接打印机到网络有线连接:用网线将打印机...

如何在银河麒麟操作系统上查找并下载软硬件驱动?

银河麒麟卓面操作系统如何查找并下载软硬件驱动?后台有些小伙伴都在问怎么下载驱动?实际上麒麟软件官网提供了软硬件驱动下载链接,如何获取?接下来给大家演示如何查找并下载软硬件驱动。·进入麒麟软件官网,点击...

Wi-Fi总掉线,这个设置要修改!(wi-fi总是掉线)

01关闭网卡的省电模式,这是最常见的Wi-Fi掉线元凶,默认开启,操作步骤Win+X→设备管理器,找到“网络适配器”(也可以像下图这样直接搜索打开)→找到你的无线网卡(名称通常带Wir...

WiFi出现感叹号上不了网怎么办 轻松恢复网络

在日常生活中,WiFi已成为不可或缺的一部分。然而,有时我们会遇到WiFi图标上出现了感叹号,无法上网。无论是办公、学习还是娱乐,这种情况都会严重影响体验。这种情况该怎么解决呢?本期驱动哥就给各位介绍...

摩尔线程发布图形显卡驱动v300.110

IT之家5月20日消息,摩尔线程今日发布版本号为v300.110的图形显卡驱动程序,为游戏玩家和专业用户带来全方位的性能优化与体验提升,特别在3DMark基准测试工具SteelNo...

怎么更新电脑网卡驱动 图文教程分享

网络连接在现代生活中扮演着重要的角色,而网卡驱动是保证稳定网络连接的关键组成部分。随着技术的不断发展,更新网卡驱动已经成为了一个必要的操作。本文将为您介绍常见的网卡驱动更新方法,帮助您成功解决网卡驱动...

柯达Kodak扫描仪i2600驱动及扫描软件下载与安装方法

柯达扫描仪I2600驱动及扫描软件的下载与安装方法!有很多的扫描仪我们找驱动的时候不好找,在打印机驱动网里边下载的话也是比较方便的,可以搜索到柯达I2600,我们往下选,这里边也提供了官方的驱动下载,...

推荐几款免费驱动软件(免费的驱动)

以下是一些免费且值得推荐的驱动程序更新工具,这些软件可以帮助你检测、下载和更新电脑上的驱动程序,确保硬件设备正常运行并保持最新状态:1.360驱动大师轻巧版特点:360安全卫士旗下的产品,界面简洁...

适用产品:电脑产品 目录 一、驱动 2 1、电池

适用产品:电脑产品目录一、驱动21、电池/电源驱动22、键盘驱动23、摄像头驱动24、触摸板驱动25、快捷键驱动26、USB驱动37、Type-C电源驱动38、其他驱动3二、软件4...

手把手教你如何使用免费自动化工具——Appium(安卓版)

上次在上传了一篇Appium后,有人来问我有没有Andriod版的安装教程,这个当然有,抱着负责任的心,在上班摸鱼小半天之后,可算是把教程编辑好了准备环境JDKPythonAndriodSDKNod...

常见电脑USB遇到故障问题处理方法

#什么方法可以改变命运#大家电脑在使用USB存储器的过程中总是会出现这个故障或者那个故障问题,有时候出现无法读取,有时候设备的数据消失了,遇到这个问题是不是非常着急啊,今天教大家自己尝试查看遇到常见u...

无法识别的USB设备?怎么解决?(无法识别的usb设备怎么解决代码43)

大家有没有遇到过这种问题,就是当你把自己的U盘或者其他USB设备插到电脑上的时候,桌面右下角会弹出一个“无法识别的USB设备”的提示?这会导致该USB设备无法正常使用。如何解决无法识别的USB设备问题...

如何调鼠标的灵敏度 快速调节超简单

鼠标灵敏度是指鼠标在移动时,指针在屏幕上移动的速度。适当的鼠标灵敏度不仅能够提高工作效率,还能减少手部疲劳,优化游戏体验。那么不同的使用场景,鼠标灵敏度怎么调呢?本文将详细探讨如何调整鼠标灵敏度,以及...