前端抓包调试工具

一、调试工具

1、h5调试

  • 推荐使用腾讯团队开发的vconsole,毕竟团队官方在维护,稳定性和安全性更有保证。
  • 官方文档:https://github.com/Tencent/vConsole
  • 经历了2020年整年没有更新,在2021年又重新开始了大量更新,直接上最新版吧,相对于老版本多了location的默认显示,再也不用手动输入location.href查看页面地址了。

2、小程序调试

  • 小程序调试有官方内嵌的调试工具,也就是低配版的vconsole
  • 开启方式:首先需要小程序是开发版或体验版,然后点击右上角三个点,打开调试,重新打开小程序就能看到了。
  • 官方文档:https://developers.weixin.qq.com/miniprogram/dev/framework/usability/debug.html
  • 如果想在线上小程序打开调试,可以先在对应的开发版或体验版小程序里打开调试,然后再打开线上版小程序,就能看到调试工具了,这不是bug,是小程序官方承认了的,算是后门。
  • 小程序官方的调试工具很鸡肋,没有network日志,没有storage日志
  • 对于接口数据请求的日志建议还是自己封装一下打印出来,所有接口都打印出来有点凌乱,建议做个判断,只在接口异常的情况下再打印接口日志,正常情况下的可以局部打印,也可以配合抓包工具查看。

二、移动端抓包

1、charles

charles是一款抓包工具,相比于fiddler凌乱的界面数据,charles更加清晰简洁,同时支持mac和windows。
不过它本身是收费的,有30天试用,网上有很多破解版,也有注册码,破解版百度一搜就能找到。

下面说一下安装完charles后的一些配置方式(v4.6.1):

  • 步骤一-获取电脑ip: 菜单栏 - Help - Local IP Address,这里是电脑本机ip地址

  • 步骤二-手机组成局域网: 手机和电脑连接同一网域组成局域网,打开手机连接的wifi高级设置,配置代理,代理改为手动,主机名填写电脑ip,端口默认8888,保存

  • 步骤三-手机安装证书: 手机打来浏览器输入chls.pro/ssl下载安装ca证书。

    • ios10+版本还需要在证书信任设置里信任一下安装的charles证书,具体方式:打开ios【设置】>【通用】>【关于本机】>【证书信任设置】,把刚才添加的证书后面的 Switch 打开。
    • android手机如果无法正常下载证书,也可以选择保存证书后手动安装。具体方式: charles菜单栏 - Help - SSL Proxying - Save Charles Root Certificate…,选择.cer格式保存在电脑上再传输给手机安装ca证书。
  • 步骤四-配置代理访问白名单: 菜单栏 - Proxy - Access Control Settings,点击Add,填写0.0.0.0/0,点击OK

  • 步骤五-配置https代理: 菜单栏 - Proxy - SSL Proxying Settings,勾选Enable SSL Proxying,左侧Include栏里点击Add,弹出的小窗里Host栏输入*,Port栏输入*,点击OK

ok完成。

2、spy-debugger

spy-debugger是一个专门服务于移动端h5的调试插件。

  • 官方地址:https://github.com/wuchangming/spy-debugger
  • 具体使用方式参考官方文档教程,不再赘述了。
  • 需要注意手机配置手动代理时默认端口号是9888,手机安装证书方式的网址是http://s.xxx

重点来了,spy-debugger相比于charles的优势是什么:

  • spy-debugger能抓取到spa单页面应用hash路由下的完整页面地址,包含#号后面的路由和参数,而charles抓取不到#号之后的地址内容。
  • spy-debugger能达到移动端vconsole工具的效果,能在电脑上显示调试页面的面板信息,包括elements页面元素、css样式、console日志、storage存储内容都能显示,对于线上bug的排查非常有用。
  • spy-debugger能修改页面elements元素和css样式,且页面能实时看到修改后的效果,样式bug排查利器。

3、安卓7.0+版本下的抓包

安卓7.0+的版本,app里默认会有安全限制,只信任系统证书,默认情况下是无法抓到包的。

  • 方案一: 在app里配置信任用户证书。
    配置文件:res/xml/network_security_config.xml

    <network-security-config>
        <base-config cleartextTrafficPermitted="true">
            <trust-anchors>
                <certificates src="system" overridePins="true" /> <!--信任系统证书-->
                <certificates src="user" overridePins="true" /> <!--信任用户证书-->
            </trust-anchors>
        </base-config>
    </network-security-config>
    
  • 方案二: 把ca证书安装到system系统证书目录里:

    • 需要手机提前获取完整root权限(需解锁system分区)
    • 系统证书的目录是:/system/etc/security/cacerts/
    • 每个证书的命名规则为:<Certificate_Hash>.<Number>
    • Certificate_Hash表示证书文件的 hash 值,Number是为了防止证书文件的 hash 值一致而增加的后缀
    • 证书的 hash 值可以由命令计算出来,把证书(.pem格式)保存在电脑上,在电脑终端输入openssl x509 -subject_hash_old -in <Certificate_File>,其中Certificate_File为证书路径,得到结果hash,将证书重命名为hash.0放入系统证书目录,修改权限为rw-r-r,即可正常抓包。
    • 无法使用openssl的可以百度win10安装openssl,按照教程安装,配置完环境变量后记得重新打开命令窗口操作。
    • 在这里插入图片描述

我自己的手机是安卓,目前是用的最后这个方式,就是安装证书到系统目录,过程也是相当艰辛。。。


参考链接:
https://testerhome.com/topics/17746

  • 1
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Fiddler是一款常用的抓包工具,它可以帮助开发人员进行网络请求的调试和分析。使用Fiddler可以捕获HTTPHTTPS请求,并查看请求的详细信息。通过分析这些信息,我们可以了解请求的状态、头部信息、请求体内容等。 要使用Fiddler抓包工具,首先需要下载并安装它。你可以从官网上下载安装包。安装完成后,打开Fiddler即可开始使用。 在使用Fiddler进行抓包前,你需要先启动Fiddler并刷新浏览器页面。Fiddler会根据刷新的链接地址来获取相应的状态信息,并将请求信息展示在界面上。通过查看这些请求信息,我们可以了解请求的详细内容和状态码等信息。 Fiddler还可以作为辅助工具进行数据模拟。你可以使用Fiddler来模拟各种请求,以便测试和调试前端开发中的功能。 在Fiddler工具中,你可以查看请求的详细内容,包括请求报文和响应报文。例如,你可以查看请求的URL、请求方法、请求头部信息、请求体内容等。这些信息对于分析请求和定位问题非常有帮助。同时,Fiddler还提供了其他一些功能,如过滤器、断点等,以帮助你更好地进行抓包和调试。 总结一下使用Fiddler抓包工具的步骤: 1. 下载并安装Fiddler抓包工具。 2. 打开Fiddler,并启动它。 3. 刷新浏览器页面,Fiddler会自动捕获HTTPHTTPS请求。 4. 查看请求的详细信息,包括状态、头部信息、请求体内容等。 5. 根据需要使用Fiddler提供的其他功能,如过滤器、断点等。 希望以上信息对你有帮助。如果你还有其他关于Fiddler抓包工具的问题,请随时提问。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值