
简介Fiddler中文版压缩包是面向Web开发者与测试人员的经典网络调试工具通过中文界面大幅降低HTTP(S)抓包、接口分析与性能调优的使用门槛尤其适合英文界面上手困难的初学者和需要快速定位线上问题的一线工程师。压缩包为zip格式文件总数暂未标注包体大小6.02MB解压后即可获得可运行的Fiddler中文程序。工具完整保留了抓包、请求/响应实时修改、断点调试、HTTPS流量解密、会话过滤与时间线分析等核心能力也支持通过JScript.NET编写扩展脚本便于自动化测试与数据校验。目前已有1978人学习下载这套中文版资源能帮助使用者更顺畅地理解网络通信过程从而在Web开发调试、故障排查及性能优化等场景中更加从容。1. “Fiddler 中文版本.zip”解决了什么又掩盖了什么同事扔过来一个安装包文件名写着 Fiddler 中文版本.zip。解压、覆盖 Fiddler.exe、重启菜单栏变成“文件/规则/工具”很多人到这里就以为工具已经会用了。实际上这道工序只是把门槛踹矮了一截真正的难关还在后面HTTPS 流量为什么抓不到、手机 App 怎么配上代理、证书装在哪、过滤器在哪、退出后系统代理为什么没还原。Fiddler 是 Windows 上最老牌的 HTTP/HTTPS 调试代理免费版 Fiddler Classic 功能完整默认英文界面确实劝退了不少前端、测试和刚入门的后端。很多人第一次接触它是因为“手机 App 抓包”或“弱网测试”但到手才发现抓包要先信任根证书代理要手动配Filters 在哪都要找半天。这篇文章就从这个中文包切入把安装汉化、证书信任、手机抓包、弱网脚本和卸载残留串成一套可以直接照做的流程。适合第一次装 Fiddler 的人也适合需要给同事写交接说明的测试和运维。2. Fiddler Classic 中文版 zip 的安装与汉化校验网上传的“Fiddler 中文版本.zip”不是官方发布的安装包而是 Fiddler Classic 官方程序加社区汉化资源的组合。在动手覆盖之前先把版本和产品线分清楚能省掉后面大半的兼容性问题。2.1 先分清 Classic 和 Everywhere别把汉化包用错地方Fiddler 有两条产品线Windows 上免费、界面老牌的 Fiddler Classic以及跨平台、界面现代的 Fiddler Everywhere。两者共享“抓包代理”的核心思想但主程序互不兼容。Everywhere 自带中文、需要有效授权个人学习或公司内网调试一般用不上流通的汉化 zip 也主要针对 Classic。所以拿到压缩包后先确认要覆盖的目标是 Classic而不是 Everywhere。Fiddler Classic 默认安装目录是C:\Program Files (x86)\Fiddler264 位系统也一样主程序是 32 位 .NET 进程。汉化 zip 里的文件结构通常有两种一种是直接替换主程序和配置文件另一种是放入语言资源目录。无论哪种覆盖前建议整目录备份一次方便回退。2.2 最小安装步骤与哈希校验常见做法是先装官方原版 Fiddler Classic再覆盖汉化文件而不是直接运行 zip 里的绿色版。这样后续出证书、出代理问题至少能确定底包是完整的。# 解压前比对哈希先确认你拿到的压缩包没有被二次改包 Get-FileHash .\Fiddler中文版本.zip -Algorithm SHA256 # 查看当前主程序的版本信息覆盖后再次核对 Get-Item C:\Program Files (x86)\Fiddler2\Fiddler.exe | Select-Object VersionInfo上面命令的作用是分别在覆盖前和覆盖后各跑一次对比版本号和文件签名。汉化版如果直接把官方 exe 换掉VersionInfo 里的“产品版本”通常会变得和官方不一致用官方安装包重新装一遍再覆盖能快速识别这种情况。装完后 Fiddler 会默认把 Windows 系统代理指向自己的 8888 端口退出时自动还原。如果发现浏览器没流量第一步是看任务管理器里 Fiddler.exe 是不是还驻留而不是怀疑抓包没开。2.3 菜单没变中文时先查这三件事汉化失效大半是操作顺序问题逐一排查比反复重装有效。失效现象常见原因处理办法覆盖报“文件被占用”Fiddler 进程还在内存里先在任务管理器结束 Fiddler.exe 再覆盖菜单变成半中半英压缩包内还有一层目录覆盖错位置核对解压层级让汉化文件直接落在 Fiddler2 根目录启动后界面还原英文汉化包版本与主程序版本不匹配换用和 5.x 系列对应的汉化资源别用 4.x 的旧包判断版本是否匹配可以打开菜单栏最右侧的“FiddlerScript”标签页底部会显示主程序当前的版本号。如果这里显示 5.x却用了一个标注 4.x 的汉化 zip界面就会回退英文。这个“标签页查版本”的路径比去“关于”里找更直白。3. 手机抓包的关键Fiddler 的 HTTPS 解密与证书安装中文界面只能降低操作成本抓包本身的门槛在 HTTPS。打开 Fiddler 能看到大量Tunnel to的灰色会话并看不到 URL 和响应内容这就是默认没有解密 HTTPS 的表现。3.1 HTTPS 流量为什么抓不到Fiddler 本质是本地 HTTP 代理普通 HTTP 请求会被它截获改写流量内容一目了然。但 HTTPS 建立连接时客户端先发一条CONNECT指令要求建立一条到目标服务器的加密隧道之后的所有字节 Fiddler 都无法直接阅读。解密的基本原理是中间人式的证书替换Fiddler 把自签的根证书装进系统信任区对客户端扮演服务器、对服务器扮演客户端从而看到明文。理解这点后就能解释很多奇怪现象App 显示不能抓、证书弹窗、连接被重置本质都是“客户端不愿意信任 Fiddler 这个临时证书”。3.2 在中文版里开启 HTTPS 解密的菜单操作菜单路径“工具 选项 HTTPS”勾选“解密 HTTPS 流量”。首次勾选会弹窗询问是否信任根证书点“是”。顺手勾上“忽略服务器证书错误”方便调试自签名证书的测试环境。如果弹窗没出现或者事后想手动信任可以回到选项页点“操作”按钮选择“将根证书导出到桌面”。导出后双击 .cer 文件进入“本地计算机 受信任的根证书颁发机构”完成导入。这个步骤就是热词里常说的“Fiddler 证书下载”只是分成了两种路径正常弹窗信任或手动导出导入。3.3 手机 App 抓包同一局域网、手动代理、装证书手机抓包的配置顺序建议固定先电脑开 Fiddler再配手机代理最后下载证书。顺序反了容易出现“证书下载页打不开”。# 在电脑上先确认 8888 端口在监听再拿电脑的局域网 IP netstat -ano | findstr :8888 # 查看电脑在当前局域网里的 IPv4 地址 ipconfig | findstr /i IPv4拿到 IP 后手机和电脑连同一个 Wi-Fi在手机 Wi-Fi 设置里把“代理”从“无”改成“手动”填入电脑 IP 和端口 8888。接着用手机浏览器访问http://电脑IP:8888页面会提供一个证书下载入口下载后按系统要求安装。Android 和 iOS 的差异在信任环节Android 下载 .cer 后需要到“设置 安全 安装证书”选择 CA 证书部分系统版本会要求先设置锁屏密码。iOS 下载的是描述文件安装后还要去“设置 通用 关于本机 证书信任设置”里打开“完全信任”。Android 7 及以上第三方 App 默认不信任用户安装的 CA即使装好了 Fiddler 证书某些 App 的 HTTPS 依旧解不开。这是 App 自身的网络安全策略不是 Fiddler 配置问题。提示抓包只应在自己持有的设备、自己开发的 App 或公司明确授权的测试环境进行。不要用同样手法去处理不属于你的流量。3.4 HTTPS 解密失败的 3 个真实原因看到大量Tunnel to不代表失败那是 CONNECT 隧道的正常记录。真正要排查的是以下三种情况第一证书信任了但 App 不走系统代理。很多 Android App 直接在 Socket 层配置网络忽略 Wi-Fi 的代理设置表现为只有 Wi-Fi 断了 App 才出数据。常见做法是用 Fiddler 配合模拟器或路由级代理处理而不是只改 WiFi 代理。第二IPv6 干扰。手机和电脑若通过 IPv6 通信手动代理地址填 IPv4 会连不通表现为手机上任何网页都打不开。此时在手机 Wi-Fi 设置里关掉 IPv6或让 Fiddler 监听 IPv6 地址。第三系统代理被其他工具改写。设备上装了其他代理或安全软件会把 WinINET 代理抢走Fiddler 开了等于没开。此时到“连接”选项卡勾选“允许远程电脑连接”并确认监听端口没被占。4. Fiddler 弱网测试与过滤框两个被中文菜单耽误的实用功能“弱网测试”和“过滤框在哪”是搜索 Fiddler 时出现频率最高的两个诉求。中文汉化版让菜单位置好找了但真正好用的参数藏得并不深。4.1 一条菜单开弱网一套参数做弱网Fiddler 自带弱网开关在“规则 性能 模拟调制解调器速度”勾选后所有请求和响应都会被限速。这个开关足够做粗粒度验证但它同时限制上下行、也不能精确控制接口测试时基本只能用“有没有效果”来评价。精确做法是在 FiddlerScript 里按域名或请求类型加延迟参数// 在 FiddlerScript 的 OnBeforeRequest 中加入对指定域名做请求弱网 if (oSession.HostnameIs(api.example.com)) { oSession[request-trickle-delay] 300; // 每 KB 请求延迟 300ms } // 在 OnBeforeResponse 中加入对响应方向做限速 if (oSession.HostnameIs(api.example.com)) { oSession[response-trickle-delay] 200; // 每 KB 响应延迟 200ms }这段代码的关键不是 API 名称而是trickle-delay的计费单位它按每 KB 数据延迟指定毫秒数不是直接说“延迟 300ms”。一个 2KB 的小接口请求延迟不到 1 秒但一个 1MB 的文件下载会被拉长到好几分钟。所以设置值时要先估算报文大小而不是拍脑袋填几百。参数名生效方向典型取值适合验证request-trickle-delay上行每 KB 增加 N ms200–500上传文件、提交大表单response-trickle-delay下行每 KB 增加 N ms200–500图片、列表接口、视频流需要模拟丢包和抖动时Fiddler 自带功能就不够了。常见做法是配合网络层的丢包工具一起用在 Fiddler 里控制带宽、在外层控制丢包率两者叠加才能还原地铁、电梯等真实场景。4.2 过滤框在哪筛选器标签页的 3 个关键选项“过滤框”是一个口语化说法官方中文菜单里它叫“筛选器”位置在抓包会话列表右侧的 Filters 标签页。找不到的人基本都是因为把注意力放在工具栏上忽略了右侧竖排标签。筛选器至少必须会用这三个选项“使用过滤器”总开关不勾选后面全部白设。Host 过滤选“只显示以下主机”填入*.example.com可以清掉视频、统计、日志域名刷屏的问题。协议/内容类型过滤只勾选 HTTPS或填写Content-Type: application/json让列表里只留下有分析价值的请求。需要注意筛选器只影响显示不影响抓取。接口已经请求完了想回头找出之前被隐藏的域名关掉筛选器后会话还在。4.3 QuickExec临时过滤比筛选器更快临时看一眼某个请求不值得打开筛选器面板。Fiddler 底部有一条 QuickExec 命令行直接输入关键字回车即可过滤?token 404 host:api.example.com www.example.com其中?token表示列出 URL 中包含token的会话404列出所有状态码为 404 的响应host:和都按主机名过滤区别是精确匹配、host:支持子域名。这组命令在中文版里同样生效菜单翻译不影响底部命令行为。提示QuickExec 的过滤是瞬时的不会清空其他会话想要持久保留过滤条件仍然要在筛选器面板里配置。两者配合使用效率比只用一个高很多。5. Fiddler 卸载后上不了网的恢复和一条 CustomRules 技巧Fiddler 卸载后上不了网是代理残留问题里最经典的一种搜索热度甚至超过抓包本身。5.1 断网残留怎么清理正常情况下 Fiddler 退出会自动把系统代理设回“无代理”。异常退出、卸载不干净或进程被杀Windows 的 WinINET 代理设置会残留指向一个已经不存在的 127.0.0.1:8888浏览器访问任何网站都会先把请求发给空端口然后超时。恢复按下面顺序处理:: 1. 查看 WinHTTP 层是否被设置了代理 netsh winhttp show proxy :: 2. 存在代理时重置 WinHTTP netsh winhttp reset proxy :: 3. 查看系统代理注册表项当前值 reg query HKCU\Software\Microsoft\Windows\CurrentVersion\Internet Settings /v ProxyEnable :: 4. 值为 1 时关闭系统代理 reg add HKCU\Software\Microsoft\Windows\CurrentVersion\Internet Settings /v ProxyEnable /t REG_DWORD /d 0 /f上面命令里netsh winhttp解决的是 Windows 服务和部分后台进程的代理问题ProxyEnable注册表项才是浏览器直接读取的开关。两个都查一遍比只重置一个更稳妥。如果第四步改完浏览器还在转圈顺手清空同路径下的ProxyServer键然后重启浏览器。恢复联网后还建议做一件事到certmgr.msc的“受信任的根证书颁发机构”下找到 FiddlerRoot 证书并删除。Fiddler 卸载程序不会自动清理它证书留着等于把所有走 HTTPS 的本机流量都向一把你已经丢失私钥的根证书汇报了信任状态风险不值得留。5.2 一条改响应的脚本验证接口故障场景最后留一个 CustomRules 的技巧把指定接口的 302 响应改写成 404用来验证前端是否正确处理了服务端异常。// 在 FiddlerScript 的 OnBeforeResponse 中加入 if (oSession.fullUrl.Contains(/api/v1/logout) oSession.responseCode 302) { oSession.responseCode 404; oSession.utilSetResponseBody(htmlredirect blocked/html); }保存后无需重启 Fiddler脚本会在下一次响应到达时生效。验证点有两个一是会话列表中该请求显示 404二是前端页面不再跳转到登录页而是进入错误分支。这个改法比手动构造响应更快适合在弱网测试场景里顺手确认异常分支的健壮性。本文还有配套的精品资源点击获取