fiddler查看console

Rosin是一款专为移动端页面调试设计的Fiddler插件,支持配置规则、拦截console输出、日志管理、复杂对象解析和错误捕获。它简化了HTTPS日志获取,适合调试和分析移动端网页行为。

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

 Rosin(Rosin by AlloyTeamicon-default.png?t=M4ADhttp://alloyteam.github.io/Rosin/

Rosin是一个Fiddler插件,协助开发者进行移动端页面开发调试,是移动端web开发、调试利器。

 版本

v1.0.0

 下载安装

下载对应Fiddler版本的Rosin,解压之后运行RosinInstall.exe安装
( 如果电脑有权限控制,请 "右键->以管理员身份运行" )

Roisn for Fiddler2
Rosin for Fiddler4

 特性

  • 基于Fiddler实现
  • 配置页面匹配规则
  • 拦截console方法输出
  • 日志内容本地存储
  • 日志内容展示、搜索、过滤
  • 复杂对象JOSN解析
  • 脚本运行错误捕获
  • 支持https日志输出

 使用方法

1、打开Fiddler,切换到Rosin Tab
2、点击“Add Rule”按钮,打开规则添加面板


3、选择规则匹配类型,支持三种匹配类型:
    Host——域名,如:qq.com
    Path——路径或者具体的页面地址,如:http://web.p.qq.com/coupon 或者 http://web.p.qq.com/coupon/demo.html
    Regex——正则表达式,如:^http:\/\/web\.p\.qq\.com
4、输入具体的规则内容

5、打开测试页面,在测试页面代码中调用console打日志,或者在PC控制台模拟

6、回到Fiddler,切换到Rosin的Log选项卡,选择我们的测试页面,查看日志
7、对于复杂对象,双击Object字符区域选中,然后右键

8、复杂对象都会被转为JSON对象,生成一个JSON View

9、功能区,一些功能按钮,包括:日志文件导出、日志清空、日志文件删除
10、搜索功能,搜索框中输入文本,会自动高亮匹配结果,按Enter切换匹配区域

11、javascript运行时错误信息捕获,并且支持跨域情况下的捕获(还记得那些Script.error 0的错误吗) 

 更新日志

v1.0.2 -- 2015.03.31

  • 支持https页面日志输出
  • 修复兼容性问题

v1.0.0 -- 2015.01.20

  • 支持日志级别按颜色区分
  • 支持按级别筛选日志
  • 支持日志文件导出
  • 支持日志内容清除
  • 支持日志文件删除
  • 支持日志记录自动清理
  • 支持日志内容JSON对象解析
  • 支持script error信息输出
  • 支持跨域script error信息获取
  • 优化日志展示

v0.0.1 -- 2014.12.03

  • 支持console日志接收
  • 支持fiddler日志展示
  • 支持页面规则配置
  • 支持日志列表展示

### FiddlerCore 使用指南与 HTTP 会话捕获 FiddlerCore 是一个 .NET 库,允许开发者捕获和修改 HTTP 和 HTTPS 流量[^1]。它提供了丰富的 API,能够帮助开发者在代码中实现对网络请求的拦截、修改和分析。以下是关于如何使用 FiddlerCore 进行 HTTP 会话捕获的详细说明。 #### 1. 安装与配置 要开始使用 FiddlerCore,首先需要将其添加到项目中。可以通过以下方式安装: - **通过 NuGet 包管理器**:在 Visual Studio 中打开包管理器控制台,并运行以下命令: ```bash Install-Package FiddlerCore ``` - **手动下载 DLL 文件**:如果无法通过 NuGet 安装,可以从官方网站或相关资源下载 FiddlerCore 的 DLL 文件,并将其引用到项目中[^4]。 #### 2. 初始化 FiddlerCore 在使用 FiddlerCore 之前,必须对其进行初始化。以下是一个简单的初始化示例: ```csharp using Fiddler; class Program { static void Main(string[] args) { // 启动 FiddlerCore 并指定监听端口 FiddlerApplication.Startup(8888, FiddlerCoreStartupFlags.Default); // 注册 BeforeRequest 和 AfterSessionComplete 事件 FiddlerApplication.BeforeRequest += OnBeforeRequest; FiddlerApplication.AfterSessionComplete += OnAfterSessionComplete; Console.WriteLine("FiddlerCore 已启动,按任意键停止..."); Console.ReadKey(); // 停止 FiddlerCore FiddlerApplication.Shutdown(); } private static void OnBeforeRequest(Session session) { // 在发送请求之前执行的操作 if (session.fullUrl.Contains("https://example.com")) { session.fullUrl = "https://new-example.com"; // 修改请求目标 } } private static void OnAfterSessionComplete(Session session) { // 在会话完成时执行的操作 Console.WriteLine($"Captured request: {session.fullUrl}"); } } ``` #### 3. 捕获与处理 HTTP 会话 FiddlerCore 提供了两个主要事件来捕获和处理 HTTP 会话: - **BeforeRequest**:在请求发送之前触发,可以用于修改请求头、URL 或其他属性。 - **AfterSessionComplete**:在会话完成后触发,可以用于记录响应内容或分析流量。 以下是一个更复杂的示例,展示如何捕获并修改 HTTP 请求: ```csharp FiddlerApplication.BeforeRequest += delegate (Session oS) { if (oS.oRequest["User-Agent"] != null) { oS.oRequest["User-Agent"] = "Custom User Agent"; // 修改 User-Agent } if (oS.fullUrl.Contains("https://old-site.com")) { oS.fullUrl = "https://new-site.com"; // 修改请求的目标 URL } }; FiddlerApplication.AfterSessionComplete += delegate (Session oS) { if (oS.responseCode == 200 && oS.oResponse.MIMEType.Contains("text/html")) { string responseBody = System.Text.Encoding.UTF8.GetString(oS.GetResponseBody()); Console.WriteLine($"Response Body: {responseBody}"); // 打印响应体 } }; ``` #### 4. 处理 HTTPS 流量 默认情况下,FiddlerCore 不会解密 HTTPS 流量。如果需要捕获和修改 HTTPS 请求,必须启用解密功能。以下是一个启用 HTTPS 解密的示例: ```csharp FiddlerApplication.Startup(8888, FiddlerCoreStartupFlags.DecryptSSL); // 确保客户端信任 FiddlerCore 的根证书 Fiddler.FiddlerApplication.Prefs.SetBoolPref("fiddler.network.https.enabledecryption", true); Fiddler.FiddlerApplication.Prefs.SetStringPref("fiddler.network.https.clientcertpolicy", "ignore"); ``` #### 5. 示例源码 如果需要一个完整的源码示例,可以参考以下仓库中的代码[^3]: - **项目地址**: https://gitcode.com/open-source-toolkit/51beb 此仓库提供了一个完整的 C# 示例,展示了如何使用 FiddlerCore 捕获和分析 HTTP/HTTPS 流量。 ---
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值