C#Fiddlercore无法读取https响应正文

时间:2015-02-05 04:13:35

标签: c# fiddlercore

我创建了演示应用程序以阅读所有响应正文。它成功地用于HTTP响应,但不是HTTPS。它返回“不可信连接”。如何阅读HTTPS响应。

这是我正在使用的代码:

 Fiddler.FiddlerApplication.BeforeRequest += delegate(Fiddler.Session oS)
 {
    oS.bBufferResponse = true;
 };

 Fiddler.FiddlerApplication.BeforeResponse += delegate(Fiddler.Session oS)
 {
    String body = oS.GetResponseBodyAsString();
 };

 Fiddler.CONFIG.IgnoreServerCertErrors = false;

 if (!CertMaker.rootCertExists())
 {
     if (!CertMaker.createRootCert())
     {
         throw new Exception("Unable to create cert for FiddlerCore.");
     }
 }

 Fiddler.FiddlerApplication.Startup(8877, true, true);

2 个答案:

答案 0 :(得分:0)

在fiddler应用程序本身中,您必须进入并将其设置为在选项下执行HTTPS。这涉及在您的系统上安装证书以便能够执行此操作。您可能希望从应用程序手动执行此操作 - 然后查看如何通过API在以后自动执行此操作。

答案 1 :(得分:0)

我不知道这是否是您遇到问题的原因,但Fiddler文档中不建议使用Startup重载。我认为你应该使用启动标志:

FiddlerApplication.Startup(8888, FiddlerCoreStartupFlags.Default);

在我运行的代码中,我还将其添加到受信任的证书

if (!CertMaker.rootCertIsTrusted())
{
    if (!CertMaker.trustRootCert())
        throw new Exception("...");
}