注册为系统代理

本文解释如何将FiddlerCore注册为系统代理。这是一个常见的场景,其中部分或全部系统流量被重定向到FiddlerCore,因此它可以捕获和/或修改它——类似Fiddler所做的。

基本方法

将FiddlerCore注册为系统代理的最简单方法是传递FiddlerCoreStartupSettings在启动时:

FiddlerCoreStartupSettings startupSettings = new FiddlerCoreStartupSettingsBuilder() .RegisterAsSystemProxy() .Build();FiddlerApplication.Startup (startupSettings);

在FiddlerCoreStartupSettings中有更多影响系统代理设置的基本方法。你可以阅读更多配置/代理设置篇文章。

先进的方法

您可以手动修改代理设置,而不使用基本配置方法。在Telerik中,修改系统连接的代理设置的逻辑是分离的。NetworkConnections组装。

它包含以下主要成员:

  • INetworkConnectionsDetector:表示网络连接检测器的基接口。它包含一个单一检测()方法,该方法应返回一组NetworkConnection特定类型的实例。
  • NetworkConnection:基抽象类,允许操作和监视特定网络连接的代理设置。最重要的成员是:
    • GetCurrentProxySettings ():返回当前ProxySettings为了连接。
    • SetProxySettings (ProxySettings):设置指定的连接代理设置。
    • ProxySettingsChanged:更改连接的代理设置时引发的事件。

要手动操作网络连接的代理设置,您可以使用任何内置的检测器,获取NetworkConnection类的实例,并调用它的SetProxySettings方法,例如:

//检测网络连接:var networkConnections = new WinINetNetworkConnectionsDetector().Detect();//创建适当的代理设置(在这种情况下绕过特定的主机):var proxySettings = new proxySettings (true, "//www.aliitrade.com/docs/");//修改一些网络连接:networkConnections.First().SetProxySettings(proxySettings);//启动:FiddlerApplication。启动(新FiddlerCoreStartupSettingsBuilder () .Build ());

的默认实现INetworkConnectionsDetector提供:

  • WinINetNetworkConnectionsDetector:用于检测Windows专用Windows Internet (WinINET)网络组件的网络连接。
  • RasNetworkConnectionsDetector: windows RAS网络连接检测器。
  • MacNetworkConnectionsDetector: mac专用网络连接检测器。
  • LinuxNetworkConnectionsDetector: linux专用网络连接检测器。

内置的连接检测器是特定于操作系统的,如果在不支持的平台上调用将抛出异常。

下一个步骤

在本文中
Baidu
map