C# 如何使System.Net.WebProxy不绕过本地URL?
我正在尝试使用witch usesC# 如何使System.Net.WebProxy不绕过本地URL?,c#,.net,proxy,restsharp,webproxy,C#,.net,Proxy,Restsharp,Webproxy,我正在尝试使用witch usesSystem.Http.WebProxy,因此我希望将其设置为localhost:8888或127.0.0.1:8888 代码如下: var webProxy = new WebProxy(new Uri("http://127.0.0.1:8888")) { BypassProxyOnLocal = false }; var bypassed = webProxy.IsBypassed(ne
System.Http.WebProxy
,因此我希望将其设置为localhost:8888
或127.0.0.1:8888
代码如下:
var webProxy = new WebProxy(new Uri("http://127.0.0.1:8888"))
{
BypassProxyOnLocal = false
};
var bypassed = webProxy.IsBypassed(new Uri("http://127.0.0.1"));
Console.WriteLine(bypassed);
输出:true
MSDN声明如下:
IsBypassed方法用于确定是否绕过代理
访问Internet资源时使用服务器
BypassProxyOnLocal和BypassList属性控制返回
方法的值被绕过
IsBypassed在下列任一情况下返回true:
- 如果BypassProxyOnLocal为true且主机为本地URI。本地请求 通过URI中缺少句点(.)来标识,如 "http://webserver/“
- 如果主机与BypassList中的正则表达式匹配
- 如果地址为空
Fiddler网站上的See解释了如何处理此问题。作为对Fiddler建议的一个轻微修改:如果您使用
oSession.hostname=“localhost”
,则它将保留您的端口号,而不是将其更改为8081。(注意使用oSession.hostname
而不是oSession.host
)