鸿蒙NEXT版实战开发:如何使用Charles工具抓包?

往期鸿蒙全套实战文章必看:(附带鸿蒙全栈学习资料)


如何使用Charles工具抓包

Charles是一款用于网络调试和分析的代理工具,可以拦截和查看设备与服务器之间的网络通信。通过Charles,可以监视应用程序的网络流量、修改请求和响应,甚至模拟不同的网络条件。其主要功能包括:

  • 截取http和https网络封包。
  • 支持重发网络请求,方便后端调试。
  • 支持修改网络请求参数。
  • 支持网络请求的截获并动态修改。
  • 支持模拟慢速网络。

使用时需要通过设置应用的请求经过Charles客户端代理转发到服务器,这样可以在Charles客户端进行抓包。使用Charles进行Web网络抓包非常简单,启动Charles会自动与浏览器设置成代理,不需要进行过多的设置,通过浏览器发送网络请求,Charles就会直接抓取到这些信息和响应信息。

Charles抓包不仅可以抓取来自电脑端的HTTP请求,也能够抓取来自App发出的HTTP请求,手机抓包需要在电脑端配置并且需要手机和电脑在同一网络下,即完成设备代理设置步骤,https协议的报文需要安装SSL证书后才可以抓取,即完成Charles证书下载证书安装步骤。

Charles具体使用步骤如下:

  1. 安装Charles。
  2. 设备代理设置:
    1. 查看Charles的IP地址,一般与PC主机的IP地址保持一致。
      • Charles的IP地址查看方式:点击Help -> Local IP Address查看。
      • 电脑IP地址查看方式:打开“运行”(快捷键:win+R键或者在任务栏的”搜索”按钮中查找并点击”运行”),输入“cmd”后进入命令行窗口,在命令行窗口中输入“ipconfig”命令查看IP。
    2. 设置Charles侧的调试端口号。
      • 点击“Proxy” -> SSL Proxy Settings -> 在Include栏下点击“Add” -> 添加“*:*”,即Host输入“*”,Port输入“*”,添加 “*:443”,即Host输入“*”,Port输入“443” -> 最后点击“ok”。

      • 点击“Proxy” -> Proxy Settings -> 设置“HTTP Proxy”下的Port(即Charles监听的端口,默认是8888)-> 勾选“Enable transparent HTTP proxying” -> 最后点击“ok”。

    3. 手机与PC连接在同一局域网下,手机Wi-Fi设置为手动代理,服务器主机名与端口为Charles的IP地址和Charles监听的端口。

      点击需要连接的Wi-Fi进入密码输入页面 -> 在输入密码前点击“代理” -> 选择“手动” -> 设置“代理的服务器主机名”为Charles的IP地址,“服务器端口”为Charles监听的端口,即设置成8888 -> 最后输入密码,连接上Wi-Fi。

  3. Charles证书下载。
    1. 安装Charles根证书到PC可信任的目录下。

      点击顶部菜单栏“Help” -> 选择“SSL Proxying” -> 点击“install Charles Root Certificate” -> 点击“安装证书” -> 设置存储位置(可选择当前用户或是本地计算机)后点击“下一步” -> 选择“将所有的证书都放入下列存储” -> 点击“浏览” -> 设置证书存储路径为“受信任的根证书颁发机构”。

    2. 导入系统根证书至手机。

      点击Charles顶部菜单栏“Help” -> 选择“SSL Proxying” -> 点击“Install Charles Root Certificate on a Mobile Device or Remote Browser” -> 在手机的自带浏览器中访问http://chls.pro/ssl -> 点击“立即下载”,将证书下载至手机内存内。

  4. 证书安装。

    证书在手机上的安装步骤如下:

    在手机端点击“设置” -> 隐私和安全 -> 下滑点击“高级” -> 选择“证书与凭据”,进入证书的安装选项中 -> 选择“从存储设备安装” -> 点击“CA证书” -> 点击“继续” -> 选择“浏览” -> 找到下载的证书的位置 -> 点击证书 -> 弹出“安装证书成功”的弹窗文字,则安装成功。

    选择【从存储设备安装】

    点击【CA证书】

  5. 网络请求过滤。

    通常情况下,需要对网络请求进行过滤,只监控指定目录服务器上发送的请求。对于这种需求,有以下两种办法:

    1. 在主界面的中部点击Ctrl+F快捷键打开搜索栏中填入需要过滤出来的关键字。例如监听的地址是:www.charlesproxy.com,那么只需要在上方过滤条件中填入或勾选需要的信息后点击Find按钮即可。

    2. 在Charles的菜单栏选择“Proxy” -> Recording Settings -> 然后选择Include栏 -> 点击“Add”添加一个项目 -> 按需填入需要监控的协议后重新监听,这样就可以只截取目标网站了。

说明

  1. 配置环境时,需要在电脑Charles弹出的窗口选择Allow,才能够跟手机连接。
  2. 不支持crt格式证书安装,需要转换为pem格式。 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值