0

我正在尝试获取每个请求的完整 HTTPS url。到目前为止,我只收到一个带有域 url 的 CONNECT 请求

如何获取完整的 URL 请求?

到目前为止,这是我的代码

Fiddler.FiddlerApplication.BeforeRequest += FiddlerApplication_BeforeRequest;
Fiddler.FiddlerApplication.BeforeResponse += FiddlerApplication_BeforeResponse;


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

if (!Fiddler.CertMaker.rootCertIsTrusted())
{
   if (!Fiddler.CertMaker.trustRootCert())
   {
      throw new Exception("Unable to install FiddlerCore's cert.");
   }
}

Fiddler.FiddlerApplication.Startup(0,
            FiddlerCoreStartupFlags.Default |
            FiddlerCoreStartupFlags.AllowRemoteClients |
            FiddlerCoreStartupFlags.DecryptSSL |
            FiddlerCoreStartupFlags.MonitorAllConnections |
            FiddlerCoreStartupFlags.RegisterAsSystemProxy |
            FiddlerCoreStartupFlags.ChainToUpstreamGateway |
            FiddlerCoreStartupFlags.CaptureLocalhostTraffic);



void FiddlerApplication_BeforeResponse(Session oSession)
{
        if (oSession.uriContains("youtube"))
        {
            Console.WriteLine(Osession.fullUrl());
        }
}

void FiddlerApplication_BeforeRequest(Session oSession)
{
        if (oSession.uriContains("youtube"))
        {
            Console.WriteLine(Osession.fullUrl());
            oSession.bBufferResponse = true;
        }
}

在浏览器帮助下,我试图访问https://www.youtube.com/watch?v=v-gzrWQO7VI URL。提琴手能抓到吗?

太感谢了。冉

4

1 回答 1

1

当然,Fiddler 可以捕捉到这一点。如果您看到暗示客户端不信任 Fiddler 证书的 CONNECT。您应该放回记录通知和错误的行;我的猜测是,您会看到一个makecert.exe不属于它的注释。

您上面的代码将无法编译,因为OSessionoSession.

于 2014-07-15T19:03:45.490 回答