如何从在web.config中system.net部分读出的defaultProxy设置的值?(Ho

2019-10-19 09:15发布

我想在运行时读我的默认代理设置的值,但我似乎无法找到这样做的任何方式。 有很多关于如何设置一个默认代理(如相关答案如何通过在defaultProxy配置设置凭据? ),但是我正在寻找如何阅读这些设置。

这背后的原因是,我们有时打开代理,所以我们可以捕捉与小提琴手的服务器的流量,我想创建一个自动防故障通知我,如果有人不小心忘在这种状态下关闭后提琴手。

Answer 1:

我结束了通过配置管理,而不是通过System.Net.WebProxy读值:

var proxy = System.Web.Configuration.WebConfigurationManager.GetSection("system.net/defaultProxy") as System.Net.Configuration.DefaultProxySection  
if (proxy != null) { /* Check Values Here */ }

该DefalutProxySection类有“已启用”,并能够满足我的需求“Proxy.ProxyAddress”属性。



Answer 2:

用下面的web.config部分:

<defaultProxy useDefaultCredentials="true">
  <proxy usesystemdefault="False" proxyaddress="http://1.1.1.1" bypassonlocal="True" />
</defaultProxy>

下面的代码返回从Web配置代理信息:

Uri proxy = WebRequest.DefaultWebProxy.GetProxy(new System.Uri("http://www.google.com"));


文章来源: How can I read the values of the defaultProxy settings from the system.net section in a web.config?