# 安装证书

每一款抓包工具在使用前,都需要在手机上安装对应的证书才能够正常使用。

下面是在 iOS 系统上安装证书的方法步骤

  1. 打开手机设置 -> 无线局域网 -> 点击已连接的 wifi 旁边的提示符号 -> 滑到最下面的配置代理,将代理改成手动,服务器地址指定为电脑本机地址,端口号指定为抓包工具监听的端口号。

  2. 手机上打开浏览器,输入抓包工具的证书下载地址,下载 iOS 系统的证书。下载后的证书打开设置就能看到,叫做描述文件,点击可以进行证书安装。

  3. 点击通用 -> 关于本机 -> 滑到最下面的证书信任设置,将新安装证书的信任开关打开。

此时,证书的安装就完成了。

补充

如果想要删除证书,可以到【设置 -> 通用 -> VPN与设备管理】进行删除。

# Proxyman

Proxyman (opens new window) 是一款高性能的 macOS 抓包工具,界面简洁优美,配置使用简单,个人感觉并不输于 Charles。

下面是在 MacOS 和 iOS 系统上配置使用 Proxyman 的方法步骤。

1. 下载安装 Proxyman 软件

2. 启动 Proxyman

启动完成后,可以看到 Proxyman 监听的 ip 地址和端口号。

3. 手机上安装并信任 Proxyman 的安全证书

首先将手机上的代理配置成上一步中的 ip 地址和端口号。

然后手机上打开浏览器,输入 http://proxy.man/ssl,下载安装并信任证书。

现在就可以开始愉快抓包了。

有一点需要注意的是,如果是抓取 https 请求,需要在请求域名处右键,并选择【启用 SSL 代理】,才能看到请求返回的内容

# mitmproxy

mitmproxy (opens new window) 是一款免费开源的抓包工具,配置使用简单,安装完成后,只需要一条命令启动,并在手机上安装好证书即可开始愉快抓包。

下面是在 MacOS 和 iOS 系统上配置使用 mitmproxy 的方法步骤。

1. 安装 mitmproxy

brew install mitmproxy
1

2. 启动 mitmweb

打开终端执行以下命令,执行完成后会自动在浏览器中打开抓包页面。mitmweb 默认会监听 8080 端口号,也可以通过 -p 指定端口号。

mitmweb -p XXXX
1

3. 手机上安装并信任 mitmproxy 的安全证书

启动 mitmweb 之后,会看到如下信息:

首先将手机上的代理配置成电脑本机地址,端口号指定为 8084。

然后手机上打开浏览器,输入 https://mitm.it,下载安装并信任证书。

现在就可以开始愉快抓包了。

# Charles

# 抓包

# mock 数据

使用 charles (opens new window) 还可以进行数据 mock。使用方法如下:

  1. 在本地新建一个 data.json 文件,里面存放着我们需要的数据。然后点击 charles 菜单栏的 Tools -> Map Local Settings -> Add,作如下配置。注意第二张图的两个多选框都要勾选上。

react

react

注意

域名要写 localhost.charlesProxy.com,不要写 localhost。

  1. 关掉所有的代理,比如浏览器的上网代理等。

  2. 在代码中这么使用。

useEffect(() => {
  axios.get('/api/todolist')
    .then((res) => {
      this.setState(() => {
        return {
          list: res.data.data
        }
      })
    })
    .catch(() => { alert('error') })
}, [])
1
2
3
4
5
6
7
8
9
10
11
  1. 然后在浏览器中访问 http://localhost.charlesproxy.com:3000/,就可以看到我们从本地接口请求到的数据了。

react

# Fiddler

上次更新时间: 2023年03月30日 19:27:03