我正在尝试为每个请求获取完整的HTTPS网址。 到目前为止,我只收到域名网址
的CONNECT请求如何获取完整的网址请求?
这是我目前的代码
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网址。小提琴手可以抓住它吗?
万分感谢。 然
答案 0 :(得分:1)
当然,Fiddler可以捕获这个。如果您仅看到CONNECT意味着客户端不信任Fiddler的证书。你应该放回记录通知和错误的行;我的猜测是,你会看到一个注意到makecert.exe
不在它所属的位置。
上面的代码无法编译,因为OSession
与oSession
不同。