Telerik Forums
Fiddler Forum
1 answer
1.5K+ views
How do i specify which DNS server FiddlerCore should use

I want to override the use of the system DNS Server, and not by changing the system DNS Server, but changing the DNS server programmatically at runtime during BeforeResponse, or less preferable, before FiddlerApplication.Startup.

/Thomas

Eric Lawrence
Telerik team
 answered on 30 Jul 2014
5 answers
832 views
I need some advice on how to go about doing this.

I have an IIS server that has two asp mvc website applications (desktop and mobile). There is also a web service \ rest api that this website application exposes.
This web application also is a consumer of an external rest api.

As long as this iis server is running, I would like to capture all rest api requests\responses that are initiated by our web application to an outside rest api. The idea being that I would like to dump all these requests\responses somewhere(ideally as csv format so that I can import them into a database) and do some data analysis.

The data analysis is to
1. I want to make sure every rest api request has certain parameters (i.e not blank, 6 digits, etc...). 
2. make sure there is a 1 to 1 correspondence for a certain # of rows in a table in our application db with certain calls to the rest api.
etc....

I'm thinking of running fiddler as a service so that captures are always occurring using this reference (http://fiddler.wikidot.com/runasservice)
then use this reference (http://stackoverflow.com/questions/18066687/dumping-fiddler-sessions-automatically) to auto dump all web requests and responses into csv file. I can get by in c#.

Is there a better way to do what I want to achieve?






John
Top achievements
Rank 1
 answered on 29 Jul 2014
6 answers
456 views
I have to use FiddlerCore in a 64 bit application. But the actual dll file is compiled for 32 bit architecture. Do you deliver 64 bit dll for FiddlerCore?
Erdem
Top achievements
Rank 1
 answered on 28 Jul 2014
1 answer
620 views
I'm coding a multithreaded web-crawler that performs a lot of concurrent httpwebrequests every second using hundreds of threads, the application works great but sometimes(randomly) one of the webrequests hangs on the getResponseStream() completely ignoring the timeout(this happen when I perform hundreds of requests concurrently) making the crawling process never end, the strange thing is that with fiddler this never happen and the application never hang, it is really hard to debug because it happens randomly.

I've tried to set

Keep-Alive = false

ServicePointManager.SecurityProtocol = SecurityProtocolType.Ssl3;

but I still get the strange behavior, any ideas?

Thanks

HttpWebRequest code:

     
public static string RequestHttp(string url, string referer, ref CookieContainer cookieContainer_0, IWebProxy proxy)
       {
           string str = string.Empty;
           HttpWebRequest request = (HttpWebRequest)WebRequest.Create(url);
           request.AutomaticDecompression = DecompressionMethods.Deflate | DecompressionMethods.GZip;
           request.UserAgent = randomuseragent();
           request.ContentType = "application/x-www-form-urlencoded";
           request.Accept = "*/*";
           request.CookieContainer = cookieContainer_0;
           request.Proxy = proxy;
           request.Timeout = 15000;
           request.Referer = referer;
           using (HttpWebResponse response = (HttpWebResponse)request.GetResponse())
           {
               using (Stream responseStream = response.GetResponseStream())
               {
                   List<byte> list = new List<byte>();
                   byte[] buffer = new byte[0x400];
                   int count = responseStream.Read(buffer, 0, buffer.Length);
                   while (count != 0)
                   {
                       list.AddRange(buffer.ToList<byte>().GetRange(0, count));
                       if (list.Count >= 0x100000)
                       {
                           break;
                       }
                       count = 0;
                       try
                       {
              HERE IT HANGS SOMETIMES --->             count = responseStream.Read(buffer, 0, buffer.Length);
                           continue;
                       }
                       catch
                       {
                           continue;
                       }
                   }
 
                   int num2 = 0x200 * 0x400;
                   if (list.Count >= num2)
                   {
                       list.RemoveRange((num2 * 3) / 10, list.Count - num2);
                   }
                   byte[] bytes = list.ToArray();
                   str = Encoding.Default.GetString(bytes);
                   Encoding encoding = Encoding.Default;
                   if (str.ToLower().IndexOf("charset=") > 0)
                   {
                       encoding = GetEncoding(str);
                   }
                   else
                   {
                       try
                       {
                           encoding = Encoding.GetEncoding(response.CharacterSet);
                       }
                       catch
                       {
                       }
                   }
                   str = encoding.GetString(bytes);
 
               }
           }
           return str.Trim();
       }
Eric Lawrence
Telerik team
 answered on 25 Jul 2014
2 answers
325 views
I've just installed Fiddler2 on a Windows 7 Enterprise system. On our network is running an application server providing REST methods.
I'm connecting to that server with a Java client application using RestEasy. This connects fine and sends an HTTP REST request.

I have set the proxy settings in the application's VM settings (-DproxySet=true -Dhttp.proxyHost=127.0.0.1 -Dhttp.proxyPort=8888) but when I attempt the connection it seems to go right through to the server and is not intercepted by Fiddler.

I even tried setting the proxy port to a bad value, but the request still goes through, so I'm thinking it is a RestEasy issue.
I have another Java client application which also makes a REST method call, but doesn't use RestEasy, and it is intercepted by Fiddler just fine.

Do you know what I need to do to get my Java RestEasy requests to be intercepted by Fiddler2?

Thanks,
Mark
Top achievements
Rank 1
 answered on 24 Jul 2014
1 answer
268 views
My program use FiddlerCore and set Decrypt SSL by default to capture url of session 
When I don't have fiddler installed in my PC, everything works well.  When I install fiddler and uncheck "Decrypt Https Traffic", FiddlerCore  in my program can not capture url of session,  but if I check "Decrypt Https Traffic" in fiddler, my program works well again.
So obviously,  the "Decrypt Https Traffic" checkbox impact/override  FiddlerCore option in my program. Why ? Is there any way to avoid that ?
Thanks.

Best Regards,
Steven
Eric Lawrence
Telerik team
 answered on 21 Jul 2014
1 answer
158 views
Hey there,

I am using FiddlerCore's Demo to capture http as well as https traffic.
For my program it's quite important that its using ONE root-certificate, unfortunatly Certmaker is creating another rootcertificate each time i start my app.

I also created and installed a custom certificate I generated with OpenSSL. This certificate is accepted by Fiddler, whereas my own application is again creating another certificate.

Hope someone understands the problem, thanks for requests.
Cheers! :)
Eric Lawrence
Telerik team
 answered on 21 Jul 2014
3 answers
703 views

I am attempting to diagnose an issue with Microsoft's OneDrive for Business sync client and have encountered the problem that Fiddler is not capturing all the https connections made by the client, and I don't understand why.

I am not using a browser here at all, just starting the client manually from the Start menu.

By running Fiddler, Wireshark and Systinternals' Process Monitor simultaneously, I can see clearly that the client process (groove.exe) has https sessions with
nexus.officeapps.live.com, odc.officeapps.live.com, our on-site SharePoint service and O365 - which get captured by Fiddler - and with our ADFS server - which do not.

The process id of the groove.exe process is the same in each case.
There is also an instance of MsoSync.exe, a child of the groove.exe process, which also does not get captured by Fiddler.

Thinking that perhaps the client incorporates more than one http client stack, I have followed the instructions to manually set WinHTTP’s Proxy and also (even though it is not a service) followed the instructions on capturing traffic from .NET services. This made no difference.

Bright ideas on what's going on and how to capture the uncaptured sessions will be gratefully received :-)

Thanks ....


Environment:

Windows 7 (64 bit)
Office 2010 (32 bit)
IE 11
OneDrive for Business client (15.0.4623.1000, 32bit)
Fiddler 4.4.8.4
.NET Framework 4.5.2


Alan
Top achievements
Rank 1
 answered on 18 Jul 2014
2 answers
110 views
Hello, 

I just installed Fiddler 4 on Windows 8 and when I run it I get a NullReferenceException at Fiddler.frmViewer.DoPostInitPreLoad(). There is a screen shot attached. I've been using Fiddler for years and this is the first time I've ever had a problem like this. I Googled the error but nothing seems to match. I'm really not sure how to proceed.

Any thoughts? Suggestions? 

Thanks, 

Mike
Eric Lawrence
Telerik team
 answered on 17 Jul 2014
1 answer
1.3K+ views
Hello,

Anyone had recent problems with a virus on fiddler 4.4.9.0?  I have been using fiddler as a proxy server to monitor web service traffic from several embedded devices that talk to my web service.  Recently I have been getting a flood of http packets from some unknown Chinese ip address.  I verified that somehow fiddler is the culprit by running wireshark and fiddler simultaneously.  When fiddler is running I start to get one or two Chinese ip address starting to hit my server.  Over time ( a few minutes ) it becomes a flood of http packets.  I record the chinese ip addresses with wireshark.  I then set the display filter in wireshark to trigger whenever one of these Chinese ip addresses hits the server.  When I run fiddler I get a flood of hits on wireshark.  When I shut down fiddler I get virtually no hits on wireshark.  The problem started a couple of weeks ago around the time when I upgraded fiddler 4.4.9.0.  However, I cannot be sure that the problem is due to 4.4.9.0.  I checked the location of the ip addresses using one of the popular web ip geolocators.  All them are originating from Shijianzhuang, Hebei, China.  The isp is China Unicom in Hebei.  Anyone else having the same problem?  Any fixes?  I will uninstall and re-download fiddler later today and see if the problem persists.

Best Regards,
Steve Mansfield 
Eric Lawrence
Telerik team
 answered on 17 Jul 2014
Narrow your results
Selected tags
Tags
+? more
Top users last month
Top achievements
Rank 1
Iron
Iron
Iron
Rob
Top achievements
Rank 3
Bronze
Bronze
Iron
ivory
Top achievements
Rank 1
Iron
Nurik
Top achievements
Rank 2
Iron
Iron
YF
Top achievements
Rank 1
Iron
Want to show your ninja superpower to fellow developers?
Top users last month
Top achievements
Rank 1
Iron
Iron
Iron
Rob
Top achievements
Rank 3
Bronze
Bronze
Iron
ivory
Top achievements
Rank 1
Iron
Nurik
Top achievements
Rank 2
Iron
Iron
YF
Top achievements
Rank 1
Iron
Want to show your ninja superpower to fellow developers?
Want to show your ninja superpower to fellow developers?