小提琴手做什么?为什么它可以通过打开和关闭修复我的应用程序?

时间:2015-09-15 08:06:22

标签: c# http ssl fiddler

这不是一个特定的问题,因为我有一个以上的经验,小提琴手保存我的应用程序。

最近的一个例子:

我在C#中编写了一个excel插件应用程序。在应用程序中,我有一个httpclient通过ssl连接到我的服务器。我明确地忽略了我的代码中的认证。

该应用程序始终运行良好(我的意思是连接部分),但有一天在QA环境中,它无故失败。连接似乎被长时间阻挡了。

巧合的是,我们打开了小提琴手并试图抓住一些http。然后一切都很好。

  

(小提琴手可以在中间做点什么)

然后在关闭Fiddler后,我们无法重新创建问题,因为所有事情都重新恢复正常。

  

(小提琴手永久改变了一些东西!)

以下是一些线索:

  1. 我们使用普通的C#http客户端System.Net.Http。
  2. 我们的服务器是ssl(https,但我们必须忽略该证书)
  3. 该应用程序在同一环境中表现良好。
  4. 最近的变化是关于本地化,测试环境改变了本地和语言的窗口。
  5. 我们在公司网络下,在上面的示例中使用代理。
  6. 失败不是整个连接模块,而是一个特定的请求。(在我们的例子中,发布包含excel本身的两个小xml文件的请求)
  7. 请给我们一些提示和猜测,以便我们对这个神秘的问题感觉更好。

1 个答案:

答案 0 :(得分:2)

“漫长的长时间”到底有多长?

Fiddler不会对系统进行任何持续的更改;如果启动和停止它,系统将返回到先前的配置。我想,如果某些配置设置在Fiddler运行之前已损坏,那么远程可能会在Fiddler尝试重新应用它之后不会复制损坏,但我们不知道任何此类“更正”。

This article描述了人们在Fiddler“神奇地”修复物品时发现意外的一些事情。