charles抓包工具使用

以下为Mac添加各种代理(抓包)和修改请求/响应的方法

主要包括 抓包方法修改请求/响应 的讲解。

一、抓包方法

  • 抓取PC端http请求
  • 抓取PC端https请求
  • 抓取手机端http请求
  • 抓取手机端https请求

抓取PC端http请求

1、勾选macOS Proxy:

在浏览器端发送http请求(如:http://get.sogou.com)即可抓取到数据:

抓取PC端https请求

先按 抓取PC端http请求 设置好。再执行下面操作:

1、charles安装根证书,并添加信任

安装证书:

添加信任(访问钥匙串):

2、charles允许SSL proxy

Proxy->SSl Proxying Settings下勾选“Enable SSL Proxying”,add “*:443”

以上设置后即可抓取到PC端发起的https请求。

抓取手机端http请求

1、charles设置端口号,Proxy->Proxy Settings下,添加8888端口号(也可为其它,手机端需要跟此一致):

2、确保手机端和PC端在同一局域网。美团这边PC端wifi与手机端不能互相访问,需要在PC端连有线才可。
3、手机端:设置-》Wi-Fi-》下配置代理(手动),输入PC端的服务器(ip)、端口号(8888)
此时charles会弹出一个提示连接手机端的对话框,点击allow即可。注:若未弹出,可重启charles。

以上设置后即可抓取到手机端发起的http请求。

抓取手机端https请求

先按 抓取PC端https请求抓取手机端http请求 分别设置好。再执行下面操作:

1、charles根证书安装到手机端

charles:Help->SSL Proxying->Install Charles Root Certificate on a Mobile …:

弹出弹框:

以上弹框意思是:
1、手机端浏览器输入 chls.pro/ssl 来下载安装证书(charles在 抓取PC端https请求 步骤中安装的证书):

点击允许后,安装证书:

2、手机端信任此证书:Settings->通用->关于->证书信任设置,打开信任开发即可。

按上面两个步骤完成手机端证书的安装。
现在可以抓取手机端https请求了,展示如下:

二、修改请求、响应

  • 替换response为本地文件
  • 替换response为远端文件
  • 修改request、response(header)数据

以 http://ww.baidu.com 为例。

替换response为本地文件

即用本地文件替代一个request的响应,使每次发出该请求,都会返回本地文件数据。

1、本地文件的创建

方法一:右键一个请求,选择 “Save Response”, 保存为本地文件(修改该文件后保存)。
方法二:直接在本地创建一个文件(手动写入内容)。

2、修改request映射,映射到本地文件

右键该请求,选择“Map Local”:

弹框中选择本地文件,点OK:

3、重新发起该请求后,即返回了本地文件内容:

替换response为远端文件

同 “替换response为本地文件” 类似。
入口为:右键请求-》Map Remote,弹框中输入另一个远端请求。类似如下设置,会跳转到image.baidu.com地址。

修改request、response (header)数据

可以通过使用断点功能来篡改请求的数据或者返回的数据,达到模拟的效果,以测试任意app为例,方法如下:

1、类似于mapping,我们可以针对接口右键选择"BreakPoints",这样这个接口就被加入到断点状态了

2、需要进一步修改断点的属性,可以在菜单栏"Proxy"–>"Breakpoints Settings"里进行添加删除或者修改,配置方式和mapping雷同,并且可以选择这个断点是在request还是response,还是两者都要。

3、这个时候再刷新app界面,会直接跳转到断点模版,这个时候你可以在对应状态情况下修改request或者response,然后点击下方按钮“Execute”。

跳转到断点界面,先点击下方执行按钮“Execute”。

如在请求 https://www.baidu.com/ 中修改request,添加aaa请求参数,则如下操作:

则实际请求变成了如下:

修改response跟request类似:

1、然后点开Edit Response界面,选择JSON格式(或HTML),格式清晰,方便修改,直接在上面进行数据修改,改成你想要测试的数据,然后点击执行按钮

2、再次刷新app界面,然后app返回的是新改的数据,根据返回数据测试客户端显示是否正确。

注意

要想使用手机端抓包功能,一定注意:
1、要 ping 下是否能调通,要保证在同一网段内;
2、ios端安装完证书后,一定要去证书信任列表里手动启动。

完!!!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值