Proxyman设置后iOS设备的API请求没被拦截怎么办?

开发者丽丽 阅读 55

用Proxyman调试移动端时遇到怪事,明明已经安装了证书并信任了代理,但iOS设备访问的API请求还是直接到真实服务器了。

我按照官方教程配置了手动代理,设备和电脑处于同一网络,Proxyman里显示设备已连接。但访问这个测试页面时:

<script>
fetch('https://api.example.com/data')
  .then(res => res.json())
  .then(data => console.log(data));
</script>

请求完全没出现在Proxyman的会话列表里,直接跳过了拦截。

试过重启Proxyman、重装证书、关闭防火墙都没用,求大神指条明路啊!

我来解答 赞 8 收藏
二维码
手机扫码查看
2 条解答
程序员艺诺
应该是iOS的HTTPS流量绕过了代理,去设置里关掉“WiFi中的HTTP Proxy -> Bypass”选项,或者检查下Proxyman的监听端口是不是被占用了。另外确保测试页面的域名api.example.com没被加进系统的“始终直接连接”列表。

如果还不管用,试试这个命令重置网络设置:
sudo networksetup -setwebproxystate Wi-Fi off
sudo networksetup -setwebproxystate Wi-Fi on


真他娘的折腾人,不过调试这种问题本来就这样。
点赞 5
2026-02-02 17:06
极客梓萱
检查一下你的iOS设备是否开启了“忽略HTTP重定向”,这个设置会绕过代理工具的拦截。去Proxyman的设置里确认一下“Intercept HTTPS”选项是不是已经勾选了,同时确保证书正确安装并且受信任。如果还是不行,试试在代码里手动设置请求头:
fetch('https://api.example.com/data', {
headers: {
'X-Proxied': 'true'
}
}).then(res => res.json()).then(data => console.log(data));
点赞 6
2026-02-01 09:07