C# WebProxy.IsBypassed和Proxy.pac
我目前正在为公司环境开发一个.net组件。它需要与使用SSH传输文件的第三方公司交谈。同一组件还支持FTP与不同方通信 在我试图依靠WebProxy.IsBypassed方法来告诉我目标Uri是否需要让代理服务器进行身份验证之前,一切都正常 我有app.config文件设置:C# WebProxy.IsBypassed和Proxy.pac,c#,.net,webproxy,C#,.net,Webproxy,我目前正在为公司环境开发一个.net组件。它需要与使用SSH传输文件的第三方公司交谈。同一组件还支持FTP与不同方通信 在我试图依靠WebProxy.IsBypassed方法来告诉我目标Uri是否需要让代理服务器进行身份验证之前,一切都正常 我有app.config文件设置: <defaultProxy enabled="true" useDefaultCredentials="true"> <proxy scriptLocation="http://address/p
<defaultProxy enabled="true" useDefaultCredentials="true">
<proxy scriptLocation="http://address/proxy.pac"/>
</defaultProxy>
如果目标Uri为,IsBypassed方法将正确返回“False”,这正是我所期望的。如果我将相同的Uri更改为ssh://202.100.1.1:5500 IsBypassed方法返回“True”
我已经测试了这个proxy.pac文件,它在ftp和ssh场景中都正常工作
我想知道.net在确定IsBypassed方法的真值或假值时是否实际使用了这个pac文件
我注意到的一件事是,如果我在app.config文件中键入地址,visual studio将识别为链接,例如,IsBypassed方法总是可以返回预期的结果。如果我打字ssh://202.100.1.1:5500,visual studio无法将其识别为链接,则IsBypassed方法始终返回假值
堆栈溢出还会自动将带有FTP的uri转换为链接,但将SSH保留为纯文本
这里有人知道这件事吗