资讯详情

资讯详情

Fiddler下载与汉化完整指南:证书配置、弱网测试及常见报错排查

Fiddler这个小工具我在项目里用了十年电脑换了好几台但它始终是我装完系统后第一批装回来的软件之一。这些年不管是在测试环境里定位接口问题还是帮前端同事看请求报文它都帮了大忙。这篇文章主要解决两件事——Fiddler下载和汉化顺便把下载安装过程中最容易踩的坑比如证书配置失败、443报错、打开Fiddler后浏览器断网、自定义规则编辑器报错之类一次性讲清楚。不管你是刚转行做测试的新人还是写前端想自己抓请求的开发者照着一步步来基本不会翻车。1. 先说清楚Fiddler是什么凭什么大家都在用Fiddler 本质上是一个本地 HTTP 代理工具它会监听你电脑上的网络流量把进出的 HTTP/HTTPS 请求和响应完整记录下来。你可以在这个基础上做很多事情查看请求头、响应体、请求参数修改请求再重新发送也可以用断点功能把请求卡住手动改完后再放行。它的定位很纯粹帮你把网络通信的“黑盒”打开让你清清楚楚看到数据到底长什么样。1.1 它到底能做什么我见过不少人把 Fiddler 当成“抓包工具”用完就关其实它的能力远不止抓包。常用来做这几件事接口调试把某个请求的返回结果改掉看前端页面会怎么表现这就是 Mock。弱网测试模拟 3G、4G 或高延迟网络看 App 在差网络环境下会不会崩溃、超时。请求重放把一个请求重复发送用来验证接口幂等性、并发问题。流量分析查看页面加载了哪些静态资源、哪些接口报了 404/500、哪个请求特别慢。移动端抓包手机和电脑连同一个局域网手机设置代理后App 的 HTTP 请求就能在 Fiddler 里看到。从 Web 页面到小程序再到手机 App只要是走 HTTP/HTTPS 协议的应用它基本都能覆盖。日常开发和测试里的接口联调问题大部分用它都能定位出来。1.2 工具这么多为什么我推荐Fiddler市面上的抓包工具不少Charles、HTTP Toolkit、浏览器自带的 DevTools 都不错但 Fiddler 有一个很实在的优势免费且轻量。Charles 虽然功能做得精致但完整版需要付费很多团队用的还是破解版版权上不太干净。浏览器 DevTools 虽然方便但只能看浏览器里的流量看不到客户端的请求也做不了全局拦截。Fiddler Classic 完全免费安装包只有几 MB启动速度也快在普通办公电脑上运行几乎没有压力。对于中小团队和一个技术人自己折腾来说它是我认为性价比最高的选择。当然Fiddler 也有缺点。界面比较老默认是英文初次上手有点劝退。所以“Fiddler下载和汉化”才会成为高频搜索词我自己第一次用的时候也被那一堆英文菜单搞得头疼。别担心汉化的路子我会在后面的章节专门讲。2. 下载之前先选对版本很多人直接在搜索引擎里搜“Fiddler下载”然后随便点一个结果就装了。这一步踩坑的概率其实很高因为 Fiddler 目前有几个版本功能差异和收费模式都不一样。2.1 Classic版和Everywhere版的区别目前官方主推的是 Fiddler Everywhere这个版本界面现代化跨平台支持 Windows、Mac、Linux但它是订阅制的免费版有请求数量限制。另一个是 Fiddler Classic只支持 Windows完全免费界面是传统风格也就是大多数教程里用的那个版本。对比项Fiddler ClassicFiddler Everywhere价格免费免费版有限额完整版订阅付费平台仅WindowsWindows / macOS / Linux界面传统英文界面现代图形界面自动更新官方已较少更新持续更新适用人群普通测试、开发调试团队协作、跨平台使用者既然搜索“Fiddler下载和汉化”的人大多是想快点上手那我会优先推荐 Classic 版。一方面是因为它免费无限制另一方面是因为大量现成的教程、脚本、汉化包都围绕这个版本出了问题容易找到解决办法。2.2 从官网下载的正确姿势官网地址是 Telerik 的 Fiddler 页面直接在浏览器访问https://www.telerik.com/fiddler/fiddler-classic页面上会有醒目的 “Download” 按钮。点击后会下载一个 exe 安装包文件名一般是FiddlerSetup.exe之类的。下载完成后先别急着双击安装。建议右键点 exe 文件选择“属性”在“数字签名”标签页里检查签名是否正常。官方签名的发布者信息应该是 Telerik 相关的主体如果签名信息看着可疑或者提示签名损坏那就要小心了果断删掉重新去官网下载。有一个细节值得注意Fiddler Classic 安装包虽然不大但官方服务器在海外偶尔会出现下载慢或者中途断掉的情况。遇到这种问题可以换一个浏览器再试或者清掉浏览器缓存重新下载。还有一点安装包下载完成后先看一眼文件大小一个只有几百 KB 的“安装包”基本不可能是真的这种明显异常的文件不要运行。2.3 官网下载遇到问题怎么处理经常有人来问“Fiddler官网下载不了怎么办”。我遇到过的几种情况以及处理办法下载页面打不开可能是浏览器插件拦截了页面脚本换个无痕窗口试试。下载到一半断掉把浏览器自带的下载工具换成单线程下载或者等网络稳定后再重试。下载速度特别慢可以用下载工具或者换个时间再下载高峰期确实会慢一些。找不到下载按钮Telerik 官网页面结构偶尔会调整页面右上角一般有搜索框直接搜 “Fiddler Classic”。这个环节最忌讳的是去一些来路不明的“下载站”找安装包。这类站点经常捆绑流氓软件有些甚至把汉化版和广告程序打包在一起装上之后电脑里莫名多出一堆弹窗。我的原则很简单宁可多花几分钟从官网慢慢下也不在一个下载站上省这几分钟时间。3. 安装与基础配置装好不是终点能抓到包才算Fiddler 的安装本身非常简单一路 Next 就行。但实际使用中的各种问题往往不是出在安装上而是安装后的配置上。尤其是 HTTPS 证书这一块要是没搞定你抓到的永远是一堆Tunnel to ...的加密流量什么都看不出来。3.1 安装过程与两个关键设置双击安装包后按提示 Next 到完成就行。安装路径我建议用默认路径不要自己改到中文目录下Fiddler 对中文路径的兼容性一般汉化包替换文件时反而容易出问题。安装完成后先别急着用。打开 Fiddler进入菜单Tools Options这里面有几个设置值得说一下。第一个是Connections选项卡默认端口是 8888如果你本机有别的软件占用了这个端口可以改成别的比如 8889改完重启 Fiddler 生效。第二个是HTTPS选项卡里面有一个Decrypt HTTPS traffic的勾选项这个必须要勾上不勾的话只能看到加密流量抓不到具体的请求内容。勾选之后会弹出一个是否信任证书的提示一定要点是。这个证书是 Fiddler 自己生成的相当于在你的电脑上安了一个“本地中间人”这样可以解密 HTTPS 流量。如果你用的是 Windows 10 或 Windows 11证书安装后可能还需要到“证书管理器”里确认一下信任状态后面我会详细说。3.2 HTTPS证书配置这步决定能不能抓HTTPS很多人装完 Fiddler 后发现抓到的请求全是CONNECT开头、状态是 200 的隧道连接展开后看不到请求头也看不到响应体。这种情况十有八九就是证书没装好。正确处理流程是这样的打开 Fiddler进入Tools Options HTTPS勾选Decrypt HTTPS traffic然后点确认。这时候会弹出两个 UAC 提示都是让你确认安装证书全部选“是”。这只是第一步系统不一定马上信任这个证书。如果你用的是 Windows 10/11装完证书后建议手动确认一遍。按Win R输入certmgr.msc打开证书管理器展开“个人”和“受信任的根证书颁发机构”看里面有没有一个以DO_NOT_TRUST_FiddlerRoot开头的证书。如果在“个人”里能找到但“受信任的根证书颁发机构”里没有那说明根证书没有被系统信任必须手动导入。操作方法是右键证书选择“剪切”再粘贴到“受信任的根证书颁发机构”里或者重新在 Fiddler 里点Export Root Certificate to Desktop然后双击安装到“受信任的根证书颁发机构”。这个步骤对浏览器抓包影响很大。Chrome、Edge 这类浏览器默认会校验证书链如果系统不信任 Fiddler 的根证书你会看到“您的连接不是私密连接”的红色警告甚至直接拒绝加载页面。所以别嫌麻烦证书这一关一定要一次做对。3.3 证书安装失败的常见原因证书安装失败常见的就那么几个原因独立排查起来很快系统时间不对证书有有效期如果电脑时间明显偏离证书校验就会失败。先把时间同步好再装证书。已经装过旧证书如果你之前装过旧版本的 Fiddler 证书新版本生成的证书指纹变了新旧证书冲突会导致信任失败。解决方法是去 Fiddler 的 HTTPS 选项里点Reset All Certificates清掉旧的再重新勾选解密。浏览器缓存了旧证书信息装好证书后建议重启一下浏览器或者用无痕窗口测试这样能排除缓存干扰。安装了多个抓包工具如果电脑上同时装了 Charles、mitmproxy 这类工具它们的证书也会互相影响。这种情况下只保留一个工具的证书是最省心的。证书装好之后你可以打开任何一个需要登录的网站看 Fiddler 会话列表里是否出现了正常的 GET/POST 请求并且点击会话能看到右侧的 JSON 或 HTML 内容。能到这步说明基础环境已经通了。4. 汉化的完整思路从原理到操作Fiddler Classic 默认界面全是英文这对很多习惯了中文界面的用户来说确实不友好。汉化也是新手最关心的问题之一。汉化之前我建议你先搞清楚汉化包到底做了什么否则出了问题你会一脸懵。4.1 汉化的本质和版本匹配问题Fiddler Classic 的界面文字是编译在程序集文件里的没有现成的多语言切换功能。所谓汉化本质上就是修改程序集里的英文资源把它替换成中文。目前主流的汉化方式有两种一种是直接替换安装目录下的可执行文件和对应的语言资源文件另一种是通过外挂式汉化工具在运行时修改界面字符串。第一种方式最常见。汉化包通常是一个压缩包里面有几个文件安装方式就是复制到 Fiddler 安装目录下覆盖同名文件。这种方式效果最彻底打开之后整个界面都是中文包括菜单、按钮、右键菜单。这里有一个非常关键的点汉化包要和 Fiddler 版本匹配。Fiddler 每个版本的资源文件结构可能会有变化汉化包是基于某个特定版本制作的版本相差太大会导致界面文字错乱、按钮失效甚至程序打不开。我建议你安装汉化包之前先打开 Fiddler 帮助菜单里的 About记录下当前的版本号然后找对应版本的汉化包。4.2 汉化包替换的具体步骤在我自己的电脑上按这个顺序操作基本没有出过问题彻底关闭 Fiddler不仅要点关闭按钮还要看右下角托盘区有没有残留图标确认进程已经退出。有文件占用时替换汉化包会提示无法覆盖。备份原文件把 Fiddler 安装目录完整复制一份到桌面比如复制出Fiddler2-bak文件夹。这是你汉化失败的救命稻草宁可多占几百 MB 磁盘也别省这一步。找到安装目录默认路径一般是C:\Program Files (x86)\Fiddler2如果你装的时候改了路径就到你改的位置去找。解压汉化包覆盖同名文件把汉化包里所有的 exe、dll 文件复制到 Fiddler 安装目录系统提示“是否覆盖”时选择全部覆盖。启动 Fiddler 验证效果打开后从菜单栏开始看如果菜单都变成中文说明汉化成功。装完之后建议顺手做一次“冒烟测试”也就是抓一个简单的 HTTPS 请求确认程序的核心功能没有受到汉化包影响。因为极少数汉化包在翻译字符串时会导致部分按钮点击无响应提前发现总比上线前发现要好。4.3 汉化后出问题怎么恢复汉化包有时会带来一些意外问题比如界面出现“口口”乱码、菜单重叠、脚本编辑器打不开或者 Fiddler 一启动就闪退。出现乱码通常是字体问题。Fiddler 默认界面字体不支持中文字符集只要在退出程序的情况下找到 Fiddler 的配置文件把字体改成支持中文的字体比如微软雅黑再重新启动就行。如果是菜单重叠或者按钮失效大概率是汉化包版本和软件版本不匹配。这时候最稳妥的做法是把第 2 步备份的原文件重新复制回去覆盖汉化文件恢复英文界面。如果不想折腾了也可以直接卸载重装 Fiddler安装时选默认路径基本能恢复原样。还有一个容易被忽视的问题是杀毒软件拦截。汉化包里的文件是对 exe/dll 的修改某些杀毒软件会把它识别为可疑行为直接隔离掉。遇到安装了汉化包但界面没变化的情况去杀毒软件的隔离区看看有没有被扣下的文件恢复后加入信任列表再试一次。4.4 不汉化也能用的菜单对照表如果你暂时找不到合适的汉化包或者不太想折腾用英文界面其实也没那么难。Fiddler 的菜单结构很规律我整理了一份常用对照看一眼就能上手。英文菜单中文含义作用File Capture Traffic捕获流量开关关闭后不再抓包Rules Performance Simulate Modem Speeds模拟调制解调器速度开启后模拟弱网Tools Options选项设置证书、端口、连接配置Inspectors检查器查看请求和响应内容AutoResponder自动响应器设置 Mock 规则Composer编写器手动构造并发送请求Filters过滤器按规则过滤会话列表QuickExec命令行框输入命令快速操作表格里这几个功能覆盖了 90% 的日常使用场景。你只要记住Tools Options是配置入口、AutoResponder是 Mock 入口其他菜单在需要的时候查一查完全不影响干活。5. 装好Fiddler后一定要做的几件事Fiddler 装好、汉化好不代表就可以直接用了。实际使用中很多人会遇到“打开 Fiddler 后浏览器上不了网”“弱网测试怎么设置”“手机抓包连不上”这些问题。这一节我把自己亲测有效的思路写出来。5.1 打开Fiddler后浏览器上不了网怎么办Fiddler 启动时会自动把系统代理设置为127.0.0.1:8888退出时再把它改回去。如果这个过程中出了问题比如 Fiddler 非正常关闭系统代理就卡在了废弃的状态浏览器就会一直往一个不存在的代理端口发请求结果自然打不开网页。遇到这种情况有几个立竿见影的处理方法。先按Win R输入inetcpl.cpl打开 Internet 选项在“连接”选项卡里点“局域网设置”把“为LAN使用代理服务器”的勾选去掉浏览器立刻就能恢复。如果代理没勾上但还是连不上可以在命令行里执行一条命令复位 WinHTTP 代理这样能清掉系统残留的代理信息。还有一个常见原因是端口冲突。Fiddler 默认监听 8888如果这个端口被其他程序占用了Fiddler 并不会主动提示而是代理生效但流量没人接收。解决办法是把 Fiddler 的监听端口改成一个冷门端口比如 8866改完记得重启 Fiddler然后在浏览器里重新访问网站验证一下。5.2 弱网测试的正确打开方式弱网测试是 App 测试里很常见的一项要求Fiddler 在这方面做得很方便。最简单的方式是在Rules Performance里勾选Simulate Modem Speeds打开之后所有请求都会被人为加慢模拟 56K 拨号上网时代的网络速度。这种方法适合快速验证但不够精细。想要模拟更真实的网络场景就要改 FiddlerScript。在Rules菜单里选择Customize Rules会打开一个脚本编辑器找到OnBeforeRequest函数在函数里加上一句if (m_Hide304s) oSession[request-trickle-delay] 300;以及找到OnBeforeResponse函数在里面加上if (m_Hide304s) oSession[response-trickle-delay] 150;request-trickle-delay表示请求发送前的延迟毫秒数response-trickle-delay表示响应发送前的延迟毫秒数。比如你想模拟一个高延迟的弱网环境可以把这两个值调得大一些比如 1000 和 1000体验下来就是每请求一个接口都要等好几秒。实际测试时建议先把整个请求链路的正常耗时测一遍再根据弱网标准去配置延迟值这样测出来的数据才有参考价值。改完保存脚本后记得重新进入一次Rules菜单确保规则被加载。有人改完脚本却发现没有生效多半是忘了在Rules Performance里继续保持Simulate Modem Speeds勾选状态。5.3 手机App抓包的基础流程手机抓包也非常实用。简单来说就是让手机的网络流量也经过 Fiddler。前提是手机和电脑连的是同一个局域网然后在 Fiddler 的Tools Options Connections里勾选Allow remote computers to connect并确认端口号。这一步很关键不勾选的话手机是连不上 Fiddler 的。接着看电脑的局域网 IP命令行里输入ipconfig找到 IPv4 地址。手机进 Wi-Fi 设置把代理改成手动主机名填电脑的局域网 IP端口填 8888保存后手机上的 HTTP 流量就会出现在 Fiddler 里。如果手机上的 App 走的是 HTTPS 协议还需要在手机上安装并信任 Fiddler 的根证书。用手机浏览器访问http://电脑IP:8888页面会提供一个证书下载链接下载后安装到手机上。iOS 系统比较特殊除了下载证书还要去“通用 关于本机 证书信任设置”里手动开启信任开关否则即使装了证书也会校验失败。这里提醒一句现在的很多 App 为了提高安全性会对自己的服务器证书做 SSL Pinning也就是说客户端只信任自己预先内置的证书指纹Fiddler 的抓包证书会被直接拒绝。这种情况严格来说不一定是配置错误而是 App 的安全策略。要绕过的话一般需要配合脱壳、注入等逆向手段这已经超出抓包基础范畴了。5.4 Mock响应不生效怎么排查用 Fiddler 做 Mock最常用的入口是AutoResponder面板。方法是把左侧会话列表里的一个请求直接拖到 AutoResponder 区域然后在底部设置对应的响应文件或响应字符串最后务必勾选顶部的Enable rules和Unmatched requests passthrough。如果没有勾选Enable rules规则就不会生效这是最常见的问题。在线调试时我喜欢用 FiddlerScript 的方式做 Mock。在Customize Rules里用oSession.utilSetResponseBody()直接改返回内容改写之后还要用oSession.utilSetResponseBody之外的一个小技巧同步修改响应的Content-Length否则客户端会一直等剩余字节直到超时。另外检查规则时要注意 URL 匹配规则。Fiddler 的默认匹配方式是字符串包含不是全量精确匹配。如果你写了https://example.com/api/login那它也会匹配到https://example.com/api/login2。想在旧版本里实现精确匹配需要用类似EXACT:开头的语法。新版支持正则表达式如果要用正则建议先在在线工具上验证一下再填入 Fiddler不然很容易出现规则写对了但实际匹配不上或者反之误匹配了一堆请求。6. 高频报错排查实录新手阶段踩过的坑往往集中在几个固定的报错上。这里我把最常见的几类问题整理出来附带排查思路基本上就是一张 FAQ 速查表。6.1 443报错和证书坑会话列表里出现大量的CONNECT example.com:443并且后面显示200很多新手以为这是请求成功了但实际上这只是建立 HTTPS 隧道的指示你还没有看到真正解密后的请求内容。出现这种情况按顺序排查先检查Tools Options HTTPS里有没有勾选Decrypt HTTPS traffic再检查证书是否成功安装并受信任最后看当前会话是否是浏览器发起的。如果配置都对但抓取某个特定 App 的流量时还是只有隧道那大概率是目标 App 做了证书校验或 Pinning这不是配置问题而是安全策略问题。另一个常见报错是“证书错误 500”或者会话面板出现红色小锁图标。这个现象通常说明客户端不接受 Fiddler 的证书原因要么是证书没有正确导入要么是客户端使用了自己独立的证书库。解决思路是确认根证书已经被目标客户端信任必要时把 Fiddler 证书文件导出手动导入到目标程序或设备中。6.2 打开“自定义规则”报错怎么修在Rules菜单点击Customize Rules时有些环境会弹出一个脚本编辑器错误或者提示找不到关联程序。这个报错的本质是 FiddlerScript 编辑器没有正确工作。第一步试试以管理员身份运行 Fiddler。脚本编辑器需要写Scripts目录下的文件如果当前用户对安装目录或文档目录没有写权限就会打不开或者保存失败。第二步检查文档目录下的文件状态。Fiddler 的脚本文件一般位于我的文档\Fiddler2\Scripts\CustomRules.js找到这个文件右键属性把“只读”勾选去掉。第三步如果换了汉化包后出现这个报错可能是汉化过程影响了脚本编辑器的关联组件恢复原版文件再试一次。如果你平时不怎么改 FiddlerScript这个报错也可以暂时忽略。想快速查看脚本的时候直接用记事本打开CustomRules.js也行改完保存后重启 Fiddler 即可生效。6.3 其他高频问题速查表问题描述可能原因处理方法能抓HTTP抓不了HTTPS未勾选解密HTTPS或证书未信任在HTTPS选项中勾选解密并重装证书打开Fiddler后浏览器全部网站打不开系统代理残留或端口被占用取消系统代理设置或修改Fiddler端口手机设置代理后无法访问网络未勾选允许远程连接或防火墙拦截勾选允许远程连接放行8888端口抓包内容里看不到响应体响应内容过大或未选中正确视图在Inspectors里切换Raw/JSON/XML视图Fiddler启动后自己马上退出安装目录权限问题或汉化文件损坏管理员身份运行或恢复原版文件下载安装包后杀毒软件报警安装包被恶意篡改或误报从官网重新下载校验数字签名这张表里的问题我都实际遇到过处理起来不会超过 10 分钟。尤其是前两行十个来问我的几乎有八个都是这两个原因。最后分享一个我自己的习惯Fiddler 装完先别急着汉化。先用英文界面做一次完整的抓包流程确认证书、代理、解密的链路都通了再去搞汉化。这样如果最后出了问题你能很快判断是汉化包版本不匹配还是本来就有什么功能没配置好。汉化包这东西尽量挑选版本号完全一致的资源来用下载前看一眼文件发布说明别随手找个最新版就覆盖。这个习惯帮我绕过了不少坑希望你也能少走这些弯路。
觉得有用,分享给同行:

为您的企业打造数字门面

稳重轻奢商务风格,端正雅致视觉,长效耐看不易过时。

立即咨询 →