当尝试在外部Web服务(通过Internet)上调用方法时,它会抛出我 “远程服务器返回错误:(407)需要代理验证。”

为解决此问题,我使用以下代码设置我们在办公室使用的代理:

//Set the system proxy with valid server address or IP and port.
System.Net.WebProxy pry = new System.Net.WebProxy("MyHost", 8080);

//The DefaultCredentials automically get username and password.
pry.Credentials = System.Net.CredentialCache.DefaultCredentials;
System.Net.WebRequest.DefaultWebProxy = pry;

这很好,但是现在......我需要做那个“不那么har”的试图从我的系统获取信息而不是手动设置。

有帮助吗?

解决方案

这将使用我认为的IE默认代理(不推荐使用):

Services.MyService service = new Services.MyService();
service.UseDefaultCredentials = true;
service.Proxy = new System.Net.WebProxy();
service.Proxy.Credentials = service.Credentials;

其他提示

System.Net.WebProxy.GetDefaultProxy()虽然VS提醒它已被弃用。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top