Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
13 changes: 13 additions & 0 deletions _assetsApi/metadata-config.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
{
"metadata": [{
"src": [
{
"files": [
"src/**.dll"
]
}
],
"dest": "metadata",
"filter": "filterConfig.yml"
}]
}
96 changes: 0 additions & 96 deletions _config.yml

This file was deleted.

7 changes: 4 additions & 3 deletions basic-usage/capture-https-traffic.md
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ position: 30

This article explains how to capture HTTP/S traffic with FiddlerCore

Once FiddlerCore is [configured]({%slug configuration %}), it starts to listen for a traffic on the background. When it captures any session, it notifies you by raising the following events:
Once FiddlerCore is [configured](slug://configuration), it starts to listen for a traffic on the background. When it captures any session, it notifies you by raising the following events:

>tip The following event handlers are invoked on session-handling **background threads**.
>
Expand Down Expand Up @@ -46,7 +46,8 @@ You should use this event to act when a session is completed. For example, notif
Console.WriteLine($"Finished session: {session.fullUrl}");
}
```
>tip These are only the most commonly used handlers. For the full list of events check [FiddlerApplication's API reference](/api/fiddler.fiddlerapplication).
<!-- add API reference link to fiddler.fiddlerapplication-->
>tip These are only the most commonly used handlers. For the full list of events check FiddlerApplication's API reference.

## FiddlerApplication.ClientCertificateProvider

Expand All @@ -59,4 +60,4 @@ FiddlerApplication.ClientCertificateProvider = localCertificateSelectionCallback

## Next Steps

- [Import/export sessions]({%slug import-export-sessions%})
- [Import/export sessions](slug:// import-export-sessions)
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
- [Import/export sessions](slug:// import-export-sessions)
- [Import/export sessions](slug://import-export-sessions)

15 changes: 8 additions & 7 deletions basic-usage/configuration.md
Original file line number Diff line number Diff line change
Expand Up @@ -50,6 +50,7 @@ class Program
To configure FiddlerCore, you can use `FiddlerCoreStartupSettingsBuilder` class, which encapsulates the logic for creating `FiddlerCoreStartupSettting` instance, which in turn can be used as an argument for `FiddlerApplication.Startup(FiddlerCoreStartupSettings)` method.

`FiddlerCoreStartupSettingsBuilder` provides fluent API, for example a convenient usage is:

```c#
FiddlerCoreStartupSettings startupSettings =
new FiddlerCoreStartupSettingsBuilder()
Expand All @@ -74,7 +75,6 @@ FiddlerApplication.AfterSessionComplete += session =>
{
Console.WriteLine($"Finished session: {session.fullUrl}");
}

FiddlerApplication.Startup(startupSettings);
```

Expand All @@ -89,7 +89,7 @@ The following configuration methods of `FiddlerCoreStartupSettingsBuilder` are a

#### System proxy settings:

> There are a lot of possible systems and types of connections which might have to be modified in order to set proper proxy settings, and the following methods handle only the most common scenarios. For more advanced proxy configuration, see [Register as System Proxy]({%slug register-as-system-proxy %}) article.
> There are a lot of possible systems and types of connections which might have to be modified in order to set proper proxy settings, and the following methods handle only the most common scenarios. For more advanced proxy configuration, see [Register as System Proxy](slug://register-as-system-proxy) article.

- `RegisterAsSystemProxy()`: Modifies the local LAN connection's proxy settings to point to the port on which FiddlerCore is listening on localhost.
- `MonitorAllConnections()`: Modifies all system connections' proxy settings to point to the port on which FiddlerCore is listening on localhost.
Expand All @@ -108,14 +108,15 @@ FiddlerApplication.Prefs.SetStringPref("fiddler.proxy.pacfile.text", "return 'PR
#### Other settings:

- `EnableHTTP2()`: Enables the support for capturing HTTP/2 traffic. Available with FiddlerCore version 6.x.x and above.
- `DecryptSSL()`: Enables decryption of HTTPS traffic. You should have a CertificateProvider loaded with trusted certificate. For more details see [Use Custom Root Certificate]({%slug use-custom-root-certificate %}) article.
- `DecryptSSL()`: Enables decryption of HTTPS traffic. You should have a CertificateProvider loaded with trusted certificate. For more details see [Use Custom Root Certificate](slug://use-custom-root-certificate) article.
- `UseClientTlsProvider(IClientTlsConnectionProvider customClientTlsProvider)`: Sets a custom client TLS provider for Fiddler. The provider will be used to authenticate an existing connection and return a stream to read/write data from/to it. Available with FiddlerCore version 6.x.x and above.

## Handling Events

The `FiddlerApplication` class exposes numerous events like `BeforeRequest`, `BeforeResponse`, `AfterSessionComplete`, and many more. Full list of all supported events can be found in the [FiddlerCore API reference](https://docs.telerik.com/fiddlercore/api/fiddler.fiddlerapplication#events).
<!-- add API reference link to fiddler.fiddlerapplication#events-->
The `FiddlerApplication` class exposes numerous events like `BeforeRequest`, `BeforeResponse`, `AfterSessionComplete`, and many more. Full list of all supported events can be found in the FiddlerCore API reference.

Learn more on how to use the FiddlerCore events in the [Capture HTTP/S Traffic]({%slug capture-https-traffic %}) article.
Learn more on how to use the FiddlerCore events in the [Capture HTTP/S Traffic](slug://capture-https-traffic) article.

## Shutdown

Expand All @@ -125,5 +126,5 @@ FidlerCore can be shut down using the following method of `FiddlerApplication`

## Next Steps

- [Register as System Proxy]({%slug register-as-system-proxy %})
- [Use Custom Root Certificate]({%slug use-custom-root-certificate %})
- [Register as System Proxy](slug://register-as-system-proxy)
- [Use Custom Root Certificate](slug://use-custom-root-certificate)
20 changes: 10 additions & 10 deletions basic-usage/import-export-sessions.md
Original file line number Diff line number Diff line change
Expand Up @@ -14,21 +14,21 @@ This article explains how to import and export sessions with FiddlerCore.

You can import sessions with FiddlerCore by using the following code:
```c#
Session[] loaded = Utilities.ReadSessionArchive(sazFilename, false, "", (file, part) =>
{
Console.WriteLine($"Enter the password for { part } (or just hit Enter to cancel):");
string sResult = Console.ReadLine();
Console.WriteLine();
return sResult;
});
Session[] loaded = Utilities.ReadSessionArchive(sazFilename, false, "", (file, part) =>
{
Console.WriteLine($"Enter the password for { part } (or just hit Enter to cancel):");
string sResult = Console.ReadLine();
Console.WriteLine();

return sResult;
});
```

## Export Sessions

You can export sessions with FiddlerCore by using the following code:
```c#
bool success = Utilities.WriteSessionArchive(filename, sessions.ToArray(), password, false);
bool success = Utilities.WriteSessionArchive(filename, sessions.ToArray(), password, false);
```

>tip With FiddlerCore version 6.0.0 and above, the SAZ archive will contain additional information about various metrics, such as timings and sizes, through the `SessionMetrics` class.
Expand All @@ -37,5 +37,5 @@ You can export sessions with FiddlerCore by using the following code:

There are cases when you may want to use custom provider to save FiddlerCore sessions. You do this by setting the following property:
```c#
FiddlerApplication.oSAZProvider = new CustomSazProvider();
FiddlerApplication.oSAZProvider = new CustomSazProvider();
```
4 changes: 2 additions & 2 deletions basic-usage/register-as-system-proxy.md
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@ FiddlerCoreStartupSettings startupSettings =
FiddlerApplication.Startup(startupSettings);
```

There are more basic methods affecting the system proxy settings in the FiddlerCoreStartupSettings. You can read more in [Configuration/Proxy settings]({%slug configuration %}#system-proxy-settings) article.
There are more basic methods affecting the system proxy settings in the FiddlerCoreStartupSettings. You can read more in [Configuration/Proxy settings](slug://configuration#system-proxy-settings) article.

## Advanced approach
Instead of using the basic configuration methods, you can manually modify the proxy settings. The logic for modifying the system connections' proxy settings is separated in the Telerik.NetworkConnections assembly.
Expand Down Expand Up @@ -61,5 +61,5 @@ The following default implementations for `INetworkConnectionsDetector` are prov

## Next Steps

- [Capture HTTP/S Traffic]({%slug capture-https-traffic %})
- [Capture HTTP/S Traffic](slug://capture-https-traffic)

2 changes: 1 addition & 1 deletion basic-usage/use-custom-root-certificate.md
Original file line number Diff line number Diff line change
Expand Up @@ -59,4 +59,4 @@ The following code explains how to trust your root certificate.

## Next Steps

- [Import/export sessions]({%slug import-export-sessions%})
- [Import/export sessions](slug://import-export-sessions)
57 changes: 57 additions & 0 deletions docs-builder.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,57 @@
top-navigation-product: fiddler-core
path-prefix: /fiddler/fiddlercore/documentation
default-title-prefix: FiddlerCore

primary-color: "#27c106" # Fiddler green

product-id: 1608
product-code: FIDDLERCORE
product-name: Progress Telerik FiddlerCore
product-url: https://www.telerik.com/fiddlercore
product-trial-url: https://www.telerik.com/try/fiddlercore

contribute-url: https://github.com/telerik/fiddler-core-docs/edit/master

search-engine-id: 001595215763381649090:bhf815yqanw # TODO get a new one for FiddlerCore
# where should we add the google analytics and tag manager codes (refer to _config.yml)?
avatar-path: ./images/common/avatar-ninja.svg # TODO get a FiddlerCore NINJA
no-results-image-path: ./images/common/no-results.svg # TODO get a FiddlerCore no-results.png
table-layout: fixed
enable-tabbed-code-blocks: true

gitLastCommitDateEnabled: true

cta-overview: '@ProductLink is a powerful .NET library that allows you to capture and modify HTTP and HTTPS traffic.'
cta-intro: '@ProductLink is a FiddlerCore is a .NET class library you can integrate into your .NET applications. Its available in .NET Standard 2.0, .NET Framework 4.0, and .NET Framework 4.5 flavors, which allows using it on Windows, Linux, Mac, and any other platform implementing .NET Standard.'

img-max-width: 100%
center-images: false

meta:
'*':
hideCta: true #consult if we want to hide the CTA on all pages (currently incorrectly sjhowing 30-days trial for Fiddler Everywhere)
getting-started:
title: Getting Started
position: 10
basic-usage:
title: Basic Usage
position: 20
knowledge-base:
title: Knowledge Base
position: 100
relativeUrl: /knowledge-base
hideChildren: true
res_type: kb
licensing:
title: Licensing
position: 200
api:
title: API Reference
position: 300
relativeUrl: /api
hideChildren: true
res_type: api

redirects:
- from: ^/$
to: /introduction
2 changes: 1 addition & 1 deletion getting-started/download-product-files.md
Original file line number Diff line number Diff line change
Expand Up @@ -41,4 +41,4 @@ Below you could find a list of the available files:

## Next Steps

- [FiddlerCore Configuration]({%slug configuration%})
- [FiddlerCore Configuration](slug://configuration)
11 changes: 7 additions & 4 deletions getting-started/first-steps.md
Original file line number Diff line number Diff line change
Expand Up @@ -13,15 +13,18 @@ This article explains everything you need to know about FiddlerCore before you s

## System Requirements

You can check the requirements for FiddlerCore suite in the [System Requirements]({%slug system-requirements%}) help article.
You can check the requirements for FiddlerCore suite in the [System Requirements](slug://system-requirements) help article.

## Download FiddlerCore

See how to download the library in the following help articles:

* [Download Product Files]({%slug download-product-files%})
* [Use Telerik NuGet Server]({%slug telerik-nuget-server%})
* [Download Product Files](slug://download-product-files)
* [Use Telerik NuGet Server](slug://telerik-nuget-server)

## Next Steps

[Check the system requirements]({%slug system-requirements%})
[Check the system requirements](slug://system-requirements)
[Using API Key to get FiddlerCore from Nuget](slug://telerik-nuget-sso)
[Basic FiddlerCore configuration](slug://configuration)
[Capturing HTTPS traffic with FiddlerCore](slug://capture-https-traffic)
Binary file modified getting-started/images/nuget-keys-telerik-001.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
4 changes: 2 additions & 2 deletions getting-started/system-requirements.md
Original file line number Diff line number Diff line change
Expand Up @@ -37,5 +37,5 @@ In order to develop applications with **Telerik FiddlerCore** you need to have t

## Next Steps

* [Download Product Files]({%slug download-product-files%})
* [Use Telerik NuGet Server]({%slug telerik-nuget-server%})
* [Download Product Files](slug://download-product-files)
* [Use Telerik NuGet Server](slug://telerik-nuget-server)
Loading