Fidder https抓包 失败问题解决

本文介绍了一个关于 Fidder 代理工具中 HTTPS 连接无法正常建立的问题及解决方案。通过移除 'Connection: close' 头部,解决了客户端在 CONNECT 建立后无法发送数据的问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

参考文档:

http://www.telerik.com/forums/ssl-negotiation-doesn%27t-initiate-for-some-traffic


进行抓包后发现https 不能正确建立,

After the client received notice of the established CONNECT, it failed to send any data!


fidder代理默认有

 Connection: close


解决方法:(将 Connection: close 去除)

static function OnBeforeResponse(oSession: Session) {
     if (m_Hide304s && oSession.responseCode == 304) {
         oSession["ui-hide"] = "true";
     }
     if (oSession.HTTPMethodIs("CONNECT") && oSession.responseCode == 200)
     {
         if (oSession.oResponse.headers.ExistsAndEquals("Connection""close"))
         {
             oSession.oResponse.headers.Remove("Connection");
         }
     }
}

### 解决 Fiddler 抓包失败的方法 当遇到 Fiddler 抓包失败的情况时,可以尝试以下几个方面来排查并解决问题。 #### 1. 检查网络配置 确保设备连接至同一局域网,并确认代理设置已正确应用。对于某些应用程序,默认情况下可能不会通过系统代理发送流量,因此需要手动调整这些程序的代理设置[^1]。 #### 2. 安装根证书 为了能够拦截 HTTPS 流量,Fiddler 使用自签名的 CA (Certificate Authority) 来创建中间人攻击环境。这意味着客户端必须信任这个 CA 才能成功解密 SSL/TLS 加密的数据流。安装 Fiddler 提供的 DO_NOT_TRUST_FiddlerRoot 证书是必要的步骤之一[^2]。 #### 3. 启用解密HTTPS流量选项 进入 `Tools` -> `Options` -> `HTTPS` 页面勾选 "Decrypt HTTPS traffic" 和其他相关项以允许 Fiddler 对安全连接进行监听和分析。注意这样做可能会引起部分网站的安全警告提示用户存在潜在风险。 #### 4. 修改目标App的行为模式 一些大厂 App 可能会采用特殊的机制防止被轻易抓取数据传输内容,比如硬编码指定 DNS 或者绕过系统的 HTTP(S) 设置直接建立连接。针对这种情况,可以通过修改 hosts 文件指向本地 IP 地址或将手机置于开发者模式下开启 USB 调试功能配合工具如 Charles Proxy 实现更深层次控制。 ```bash # Windows 下hosts文件路径 C:\Windows\System32\drivers\etc\hosts 127.0.0.1 www.example.com ``` #### 5. 更新驱动与软件版本 保持操作系统、浏览器及其他依赖组件处于最新状态有助于减少兼容性问题带来的干扰因素。同时也要记得定期更新 Fiddler 自身及其插件库以便获取最新的特性支持和技术改进。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值