Telerik Forums
Fiddler Forum
2 answers
173 views

Hello all,

 

I would like to know how I can calculate the Sequence (clock) duration (in the statistics tab) with the Fiddler's timers ?

 

Thanks a lot !

Rob
Top achievements
Rank 1
 answered on 06 Oct 2015
2 answers
146 views

hi ... im am new in fiddler and jscript.net and for me 
this combination work fine.

Q: is it posible to show a tooltip at the tray icon on any event like TCounter > 100
to inform me and hide after 5 sec ?

maybe i bother you in the future with more stupid question ;-)

thx 4 help

Newi

Newi
Top achievements
Rank 1
 answered on 06 Oct 2015
1 answer
4.4K+ views

Hello guys.
I have a task to test one web-service of our company on slow connection over 256 kbit\s.

And for connecting to intnernet ​I am us​ing 4G modem which don't have any options to limit bandwith connection.

i saw the option named as Simulate Modem speed. It allows to limit bandwith over 56k. But need to limit bandwith in 256 kb\s. How can i do this?
Thanks.

Alexander
Top achievements
Rank 1
 answered on 06 Oct 2015
1 answer
497 views

I'm working with an HTTP page and trying to replace and automatically pass to the website any instances of;

"service":"refresh"}​

with

"service":"set_score","status":1,"score":100,"data":{}}

using built-in rules (I think OnBeforeResponse is a proper place for this). I've tried to reference this post by E.L.; https://groups.google.com/d/msg/httpfiddler/ojIWanufbjo/nA1WWlaKgnoJ , but I can't seem to get it to work - my script editor doesn't like what I'm feeding it. I've been toying with this for a couple of days and while the editor isn't that scary at all, I'm not that familiar with .NET to know what I'm doing wrong.

Eric Lawrence
Telerik team
 answered on 30 Sep 2015
11 answers
709 views
Hi,
  I am trying to setup fiddler to capture traffic generated by the store apps running inside the Windows Phone emulator. While I am able to see traffic from my browser on the desktop or even remote machine, I don't see the traffic from the 8.1 emulator being logged. Things that I have tried are:

1. Enabled remote connections in Fiddler options
2. Set the proxy using prefs set fiddler.network.proxy.registrationhostname <machinename>
3. Closed and restarted fiddler - And then launched emulator.
4. Tried disabling and enabling network adapters before starting fiddler and emulator !

Nothing worked ! Is there anything else that I can check?
Wesley Marco
Top achievements
Rank 1
 answered on 30 Sep 2015
2 answers
921 views

I needed an easy way to change the clientIP of a request without having to set a custom break-point and add a header every time or use a proxy service - so I extended Fiddler with a custom rule and I thought I'd share that here for anyone else looking for something similar. I had a few locations that I specifically needed, so I created those as menu items in addition to adding a custom field.

Open your CustomRules.js for modification - 

Under class Handlers add:

// Set clientIP
// Modify the country names and IP address as appropriate, or simply use Custom and set the array value to 0

RulesString("&Set clientIP", true)
RulesStringValue(0,"Country Name 1", "0.0.0.0")
RulesStringValue(1,"Country Name 2", "127.0.0.1")
RulesStringValue(2,"Country Name 3", "​192.168.1.1")
RulesStringValue(3,"&Custom...", "%CUSTOM%")
public static var sClientIP: String = null;

 /* -- end class handlers --*/

 

Under  OnBeforeRequest(oSession: Session) add:

// Set clientIP
if (null != sClientIP) {

    oSession.oRequest["clientIP"] = sClientIP; 
}​

Save the file and the new option will be added to your Rules menu - you can switch IP addresses with a click, and simply refresh the browser to effectively request the page with the assigned IP address.

Pete
Top achievements
Rank 1
 answered on 24 Sep 2015
4 answers
499 views

Hi Guys,

 We're researching fiddler core with a view to buying a license as an alternative to using browser addons for our upcoming product, for some reason I can't get the following to work reliably across IE and Chrome - Code as follows:

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using Fiddler;

namespace WindowsFormsApplication1
{
    public partial class Form1 : Form
    {
        static Proxy oSecureEndpoint;
        static string sSecureEndpointHostname = "localhost";
        static int iSecureEndpointPort = 7777;
        delegate void UpdateUI();
        public Form1()
        {
            InitializeComponent();
        }

        private void Form1_Load(object sender, EventArgs e)
        {
            
            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.");
                }
            }

            oSecureEndpoint = FiddlerApplication.CreateProxyEndpoint(iSecureEndpointPort, true, sSecureEndpointHostname);

            //Fiddler.FiddlerApplication.OnNotification += delegate (object snder, NotificationEventArgs oNEA) { MessageBox.Show("** NotifyUser: " + oNEA.NotifyString); };
            //Fiddler.FiddlerApplication.Log.OnLogString += delegate (object snder, LogEventArgs oLEA) { MessageBox.Show("** LogString: " + oLEA.LogString); };
            Fiddler.FiddlerApplication.AfterSessionComplete += FiddlerApplication_OnAfterSessionComplete;
            Fiddler.FiddlerApplication.Startup(0, FiddlerCoreStartupFlags.Default & FiddlerCoreStartupFlags.DecryptSSL);
 
        }


        void FiddlerApplication_OnAfterSessionComplete(Session oSession)
        {

            // HTTPS TEST
            if (oSession.fullUrl.Contains("linkedin.com"))
                richTextBox1.Invoke(new UpdateUI(() =>
                {
                    richTextBox1.AppendText(oSession.GetResponseBodyAsString());

                }));

            // NON HTTPS
            if (oSession.fullUrl.Contains("pheme.co.uk"))
                richTextBox1.Invoke(new UpdateUI(() =>
                {
                    richTextBox1.AppendText(oSession.GetResponseBodyAsString());

                }));


        }

        private void Form1_FormClosing(object sender, FormClosingEventArgs e)
        {
            Fiddler.FiddlerApplication.Shutdown();
        }
    }
}

Essentially the capture doesn't seem to work reliably at all, sometimes it works, sometimes not, I always have to delete old certificates despite removing the DLL's and only deploying makcert.exe in the deployment directory.

 I appreciate this is fairly basic but what am I missing?

 Thanks

 

Marc

 

Marc
Top achievements
Rank 1
 answered on 23 Sep 2015
4 answers
565 views

I am using Microsoft Message Analyzer, and want to use SSL decryption, but I'm unsure how the licensing works? I am not developing an application that would be using the APIs, I am using an application that requires them.

 

Do I need a corporate license to use FiddlerCore with Microsoft Message Analzyer?

 

Thanks,

Devin

Eric Lawrence
Telerik team
 answered on 23 Sep 2015
1 answer
454 views

Hi,

 Is it possible to run fiddler from command line and a set of URLs so that it can traverse across all the URLs and give a HAR/XML file as an output?

Eric Lawrence
Telerik team
 answered on 22 Sep 2015
4 answers
1.2K+ views

I am working on developing an extension for fiddler and attempting to using FiddlerApplication.oProxy.SendRequest to dynamically build a request. I have noticed that using a HTTPRequestHeaders object and the add("Cookie",myCookie); method that Fiddler parses the semicolon as a cookie separator. With that being said, my conundrum is how do I set expiry, path, domain, and security of the cookie? 

i.e. mycookie1 = username=John Doe; expires=​Mon, 1​4 Sep 2015 12:00:00 UTC; path=/;domain=.mydomain.com;secure;httponly;
mycookie2 = email=John@mydomain.com; expires=​Mon, 1​4 Sep 2015 12:00:00 UTC; path=/;domain=.mydomain.com;secure;httponly;
myCookie = mycookie1+mycookie2;

HTTPRequestHeaders rHeaders;
rHeaders.add("Cookie",myCookie);

Parsed as 
Cookie
-username=John Doe
-expires=Mon, 1​4 Sep 2015 12:00:00 UTC
-path=/
-domain=mydomain.com
-secure
-httponly
-email=John@mydomain.com

Eric Lawrence
Telerik team
 answered on 18 Sep 2015
Narrow your results
Selected tags
Tags
+? more
Top users last month
Boardy
Top achievements
Rank 2
Veteran
Iron
Benjamin
Top achievements
Rank 3
Bronze
Iron
Veteran
ivory
Top achievements
Rank 1
Iron
Iron
Rob
Top achievements
Rank 3
Bronze
Bronze
Iron
ClausDC
Top achievements
Rank 2
Iron
Iron
Iron
Want to show your ninja superpower to fellow developers?
Top users last month
Boardy
Top achievements
Rank 2
Veteran
Iron
Benjamin
Top achievements
Rank 3
Bronze
Iron
Veteran
ivory
Top achievements
Rank 1
Iron
Iron
Rob
Top achievements
Rank 3
Bronze
Bronze
Iron
ClausDC
Top achievements
Rank 2
Iron
Iron
Iron
Want to show your ninja superpower to fellow developers?
Want to show your ninja superpower to fellow developers?