2011-02-01 192 views
1

如果我嘗試通過代碼連接到Web服務,我能夠從Web瀏覽器訪問Web服務,但在同一臺計算機上出現The remote server returned an error: (407) Proxy Authentication Required.錯誤。無法連接到Web服務

我提供了所有需要的憑據。這裏是我的代碼 -

MyWebService objWS = new MyWebService(); // my Web service object 

// My credentials 
System.Net.NetworkCredential cr = new System.Net.NetworkCredential(MyDomainUserName, UserPassword, DomainController); 

System.Net.WebProxy pr = new System.Net.WebProxy(ProxyServer, ProxyPort); 

pr.Credentials = cr; //Using my credentials for the local proxy 

// Web Service credentials 
System.Net.NetworkCredential cr1 = new System.Net.NetworkCredential("My_WebService_UserName", "My_WebService_Pwd"); 

objWS.Credentials = cr1; // Using WebService credentials to the WS object 

//objWS.Credentials = CredentialCache.DefaultCredentials; // I even tried Using default credentials but this didn't help. 

objWS.Proxy = pr; 

Object result = objWS.WebMethod1(param1,param2,param3); 

但是,這將引發一個錯誤 - The remote server returned an error: (407) Proxy Authentication Required.

任何想法,我究竟錯在這裏做什麼?謝謝。

+1

您是否試圖從代理後面訪問服務? – 2011-02-01 07:20:20

+0

顯然,代理信息是錯誤的。 – 2011-12-27 04:13:23

回答

1

由於您嘗試從代理服務器後面訪問服務,因此出現此錯誤。 嘗試使用此代碼(您可能只需要最後一行):

//Set the system proxy with valid server address or IP and port, for example. 
System.Net.WebProxy pry = new System.Net.WebProxy("172.16.0.1",8080); 
//The DefaultCredentials should be enough. 
pry.Credentials = CredentialCache.DefaultCredentials; 
GlobalProxySelection.Select = pry; 
0

這意味着你的代理需要一些憑證弄清楚它們是什麼,並把它們放在撬(用戶名和pasword)。

相關問題