2012-04-06 8 views
15

Ich suche nach einer Möglichkeit, Fiddler zu verwenden, um eine HTTPS-Sitzung in einer HTTP-Sitzung zu proxy, so dass der Explorer eine HTTP-Sitzung verwendet, während der Fiddler die HTTPS-Sitzung vor dem Server behandelt:HTTPS-> HTTP via Fiddler

Client (Explorer) < --http -> Fiddler < --https -> Server

kann mir jemand sagen, ob dies über Fiddler Scripting kann getan werden?

Wenn Sie eine andere Idee, wie dies mit einem anderen Werkzeug zu tun (nicht Fiedler), ich bin offen für Vorschläge :)

Dank! Yohay

Antwort

8

Try this:

if (oSession.fullUrl.StartsWith("http://")) 
{ 
    oSession.oRequest.headers.UriScheme = "https"; 
} 
10

@ Antwort der troy ist schön, aber nicht genug. Sie sollten mit CONNECT umgehen:

if (oSession.HostnameIs("app.yourdomain.com")) 
    { 
     // Handle CONNECT Tunnels 
     if (oSession.HTTPMethodIs("CONNECT")) 
     { 
      oSession["x-replywithtunnel"] = "FakeTunnel"; 
      return; 
     }   

     oSession.fullUrl = "http://somedomain:someport" + oSession.PathAndQuery; 
    } 
+0

Vielen Dank, Sie haben meinen Tag gerettet! –