在Fiddler中设置断点

打开Fiddler后,顶部菜单栏找到"Rules"选项,选择"Automatic Breakpoints",根据需要选择断点模式。

  • Before Requests:在请求发送到服务器前中断。
  • After Responses:在响应返回客户端前中断。
  • Disabled:关闭断点功能。

快捷键可以快速切换断点模式:

  • Alt + F11:切换全局断点开关。
  • Shift + F11:清除所有断点。

拦截并修改请求数据

启动断点后,浏览器或客户端发送的请求会被Fiddler拦截。在"Web Sessions"列表中找到被拦截的请求(标记为红色),双击打开"Inspectors"标签页。

  • RawHeaders标签:直接修改请求头或参数。
  • WebForms标签:修改表单数据(如POST请求的键值对)。
  • JSON标签:修改JSON格式的请求体。

修改完成后,点击"Run to Completion"按钮(绿色箭头)继续发送请求。

拦截并修改响应数据

当选择"After Responses"断点模式时,服务器返回的响应会被拦截。在"Inspectors"标签页的Raw/Headers/JSON等子标签中修改响应内容。

  • 修改状态码、响应头或响应体数据。
  • 对加密数据需先解码(如gzip压缩需解压)。

点击"Run to Completion"提交修改后的响应到客户端。

使用条件断点精确拦截

通过"Rules" > "Customize Rules"打开脚本文件(CustomRules.js),在OnBeforeRequestOnBeforeResponse函数中添加条件判断。例如:

if (oSession.url.Contains("example.com/api")) {
    oSession["x-breakrequest"] = "true"; // 拦截特定URL的请求
}

保存脚本后,只有匹配条件的请求/响应会被拦截。

注意事项

  • 修改HTTPS流量需启用Fiddler的HTTPS解密功能(在"Tools" > "Options" > "HTTPS"中配置)。
  • 断点会导致请求/响应延迟,测试完成后及时关闭断点。
  • 复杂数据(如二进制流)需通过十六进制视图("HexView")编辑。

调试技巧

  • 断点日志:在"Log"标签页查看断点触发记录。
  • AutoResponder:配合使用可模拟响应,无需手动修改。
  • Compare:对比修改前后的请求/响应差异。

以上方法适用于Web、移动端及API接口测试,灵活运用可高效调试数据流。

Logo

智能硬件社区聚焦AI智能硬件技术生态,汇聚嵌入式AI、物联网硬件开发者,打造交流分享平台,同步全国赛事资讯、开展 OPC 核心人才招募,助力技术落地与开发者成长。

更多推荐