Telerik blogs

Compare HTTP requests and responses quickly and effectively using the Fiddler Everywhere HTTPS proxy.

One of the most common things that all IT engineers do is to work with HTTP requests and responses. Whether you are creating a web application, backend service, dedicated API, online game or desktop software, there is a good chance that you will have to compose, execute, capture, test and investigate HTTP sessions. And during that investigation, common questions appear:

  • Why is that request working (or not working)?
  • Where do these API calls differ?
  • What changed?

To help you find the answer to similar questions, Fiddler Everywhere introduced a feature called Compare Sessions.

Fiddler Everywhere is a local proxy and web debugging tool that captures HTTP(s), WebSocket and gRPC traffic and provides multiple inspection instruments. Learn more about Fiddler here.

This article shows you how to use the Fiddler Everywhere proxy to compare two or more sessions with a few clicks. No need to use external diff tools. And the great part—it’s as simple as Click > Add > Compare!

Compare Two HTTP Sessions

After Fiddler Everywhere captures the ongoing HTTP(S) traffic, we can immediately use Fiddler’s inspectors to investigate the data. As powerful as the inspectors are, there is a case where you would like to compare several sessions next to each other simultaneously. In the past, we had to use an external diff tool to achieve that, which was inconvenient. The Compare Sessions tab solves that problem and empowers you to compare two sessions or groups of multiple sessions.

Fiddler users can now compare API calls by any data contained in the HTTP requests and responses. Using the new Compare Sessions tab to compare two HTTP(S) sessions is as easy as selecting them and using the Compare in Fiddler Everywhere option from the context menu. You can compare entries from the Live Traffic grid or a saved session snapshot.

Using the Live Traffic context menu to compare sessions

Then you can inspect the selected sessions in a new Compare Sessions tab.

Fiddler's Compare Sessions tab

The above demonstrates how you can compare two sessions within a fraction of a second without leaving Fiddler Everywhere. The comparison is made line by line, highlighting any difference in the HTTP headers and bodies. Fiddler uses the color red to highlight a change in the “original” session (the session that resides in Group 1) and green to highlight a difference on the same line in the subsequent session (the session in Group 2).

Compare Multiple HTTP Sessions

Fiddler Everywhere expands the comparing feature while providing an option to load and compare multiple HTTP(S) sessions. Similarly to comparing two entries, Fiddler enables you to add more sessions in two comparing groups (Group 1 and Group 2). You can add captured HTTP(S) session anytime through the Add to Compare Group option from the Live Traffic context menu.

Using Fiddler's Compare Sessions tab to load multiple session snapshots

While using the Compare Sessions tab, we recommend switching the Fiddler layout to a horizontal format. This way, you will be able to select/deselect different sessions to compare quickly, and, at the same time, you will be able to see side-by-side the HTTP Request and HTTP Response inspectors that are comparing the selected entries. The UI layout changes through the Switch Layout button (located in the Live Traffic menu—to the right of the Quick Search field).

The Fiddler UI lets you quickly switch between the added sessions, enabling you to make deep-dive analyses of multiple entries with a single click. You can easily remove a session from the comparing group or show its original location in the Live Traffic grid.

Comparing Options

You will find additional options to improve your workflow in the top-right corner of the Compare Sessions tab.

The Match Sessions By option changes the comparison order condition. The possible choices are to match by URL (default condition) or by Order. The latter compares sessions by the order they appear in the comparing groups, whereas the former matches identical URLs.

Fiddler's compare tab matching option

Use the Ignore Headers option to reduce the comparison highlight and make the wanted data easier to find. The functionality allows you to create an exclusion list to limit which HTTP headers should be compared. Any header included in the exclusion won’t proceed during the comparison.

Fiddler's ignore header option

Additionally, you can use Reveal in the Original List (session’s context menu) to quickly return to the origin and use the Overview or Inspectors tabs to deep-dive into the sessions’ data. The Overview tab provides statistical data for the session’s timings, sizes and event timestamps. The Inspectors tab is a set of UI instruments to visualize the content of each HTTP request and response.

Reveal compared session in the original list

What’s Next

The Compare Sessions function was born out of necessity to ease users’ web debugging journey. Each new release of Fiddler Everywhere adds more value to the product, and we are constantly pushing forward our aim—to make Fiddler Everywhere the most intuitive and valued proxy tool there is. Newly released features like HTTP/2, gRPC, TLS 1.3 and rules grouping are just a hint of what more you can expect in the future.

So all that said, the Fiddler team awaits your feedback! We are eager to know what you want to see as the next big thing in Fiddler Everywhere.


Nikolay Iliev
About the Author

Nikolay Iliev

Nikolay Iliev is a senior technical support engineer and, as such, is a part of the Fiddler family. He joined the support team in 2016 and has been striving to deliver customer satisfaction ever since. Nick usually rests with a console game or a sci-fi book.

Related Posts

Comments

Comments are disabled in preview mode.