# 在 Proxyman 中看不到任何流量

> Proxyman 没有抓到任何请求，或请求列表为空？请检查系统代理、录制状态、过滤器、VPN 应用和缓存的响应。

请求列表为空，通常意味着流量没有到达 Proxyman、录制已暂停，或过滤器隐藏了请求。请先检查代理和抓包设置，然后再排查 VPN 冲突和缓存的响应。

## 1. 问题 {#1-problems}

* 启动应用后，请求列表为空。
* Proxyman 没有抓取到任何请求。
* 我在应用中看不到任何请求。
* 我能看到来自 Mac 的部分请求，但看不到来自远程设备（iOS、Android）的请求。

> **备注:** 对于远程设备（iOS 或 Android），请参阅 [我的远程设备无法连接到 Proxyman](https://proxyman.com/docs/zh-cn/troubleshooting/my-ios-devices-couldnt-connect-to-proxyman-via-proxy)。

![Proxyman 请求列表为空，已抓取 0 个应用和 0 个域名](https://proxyman.com/docs/assets/Screen_Shot_2020-04-26_at_09_48_10.png)

> **备注:** 如果 Mac 上的某个应用忽略了系统代理，可以尝试 [Network Extension](https://proxyman.com/docs/zh-cn/advanced-features/network-extension)。打开 Proxyman -> Settings -> Network Extension，启用它，然后重启应用并发起一个新请求。
>
> Network Extension 目前为 BETA 版，需要 Proxyman PRO 以及 macOS 26 或更高版本。

## 2. 解决方案 {#2-solution}

请按顺序完成以下检查，每次更改后都发起一个新请求：

1. **检查代理：** 确认你的客户端使用的是 Proxyman 正在监听的电脑和端口。对于 Mac 本地流量，请检查下方的 HTTP 和 HTTPS 系统代理值。对于 iOS 或 Android 设备，请使用其 Proxyman 设置指南中提供的电脑 IP 地址。
2. **检查抓包设置：** 确保录制已开启（**Tools** -> **Toggle Recording**），并清除所有生效中的请求过滤器。如果能看到 HTTP 流量但无法读取 HTTPS 内容，请检查证书信任情况，并确认该域名的 [SSL Proxying](https://proxyman.com/docs/zh-cn/basic-features/ssl-proxying) 设置。
3. **检查 VPN 的影响：** 如果可以，请暂时断开 VPN，然后重新检查代理设置并重复该请求。部分 VPN 客户端会覆盖代理配置。
4. **检查缓存的请求：** 重复一个会发送新网络请求的操作，或尝试下文介绍的 No Caching 工具。完全由应用缓存返回的响应不会经过代理。

下文将详细介绍代理、VPN、辅助工具和缓存的检查方法。

### 2.1 关闭 Mac 上的所有 VPN 应用 {#21-turn-off-all-vpn-apps-on-your-mac}

部分 VPN 应用会在 Proxyman 覆盖 HTTP 代理后立即将其还原。结果，HTTP 流量不会经过 Proxyman 的 9090 端口。

如果可以，请关闭所有 VPN 应用，然后重新启动 Proxyman。如果你需要使用 VPN，请参阅 [Proxyman 无法与 VPN 应用配合使用](https://proxyman.com/docs/zh-cn/troubleshooting/proxyman-does-not-work-with-vpn-apps)。

### 2.2 再次检查网络设置中的 HTTP 代理 {#22-double-check-the-http-proxy-in-network-settings}

Proxyman 会在启动时覆盖 HTTP 代理，并在退出时将其还原，但某些应用可能会将其改回。

打开 System Settings -> Network -> Wi-Fi -> Details… -> Proxies：

* 检查 **Web proxy (HTTP)** 和 **Secure web proxy (HTTPS)**
* 确保端口与 Proxyman 的端口相同
* 服务器为 **127.0.0.1**

点击 OK，然后在 Proxyman 中检查请求。

![macOS Wi-Fi 的代理设置，Web Proxy 和 Secure Web Proxy 均设为 127.0.0.1 端口 9090](https://proxyman.com/docs/assets/Screen%20Shot%202020-04-26%20at%2009.54.53.png)

### 2.3 安装 Proxy Helper Tool {#23-install-the-proxy-helper-tool}

默认情况下，Proxyman 使用 `networksetup` 命令行工具覆盖系统 HTTP 代理，但在某些情况下可能会失败。

\=> 请安装 Proxy Helper Tool，它可以正确覆盖系统 HTTP 代理。打开 Proxyman **Settings** -> **Advanced** -> **Proxy Helper Tool** -> **Install**。

![Proxyman Advanced 设置，已安装 Proxy Helper Tool（版本 1.7.0），并带有 Uninstall 按钮](https://proxyman.com/docs/assets/proxyman-settings-advanced-proxy-helper-tool.jpg)

_已安装 Proxy Helper Tool_

### 2.4 部分 HTTP/HTTPS 请求未出现在 Proxyman 中 {#24-some-httphttps-requests-are-missing-from-proxyman}

Alamofire 或 URLSession 可能会为你的请求使用缓存的响应。结果，该请求从未到达服务器，因此 Proxyman 无法抓取并显示它。

解决方法： 

* 在 URLSession 或 Alamofire 中关闭缓存。
* 使用 [No Caching 工具](https://proxyman.com/docs/zh-cn/advanced-features/no-caching)（⌥⌘N）。

## 视频 {#video}

[Video: 使用 Proxyman 抓取 HTTP 和 HTTPS 流量](https://proxyman.com/videos/capture-http-https-traffic) (25 seconds)
