2010-06-02 218 views
1

我想用c#.net客戶端來使用基於Java的Web服務。Web服務客戶端身份驗證

問題是,我無法驗證服務。

它沒有工作,這一點:

mywebservice.Credentials = new System.Net.NetworkCredential(userid, userpass); 

我試着寫基類爲我的客戶的方法。

public class ClientProtocols : SoapHttpClientProtocol 
    { 
     protected override WebRequest GetWebRequest(Uri uri) 
     { 
      System.Net.WebRequest request = base.GetWebRequest(uri); 
      if (null != Credentials) 
       request.Headers.Add("Authorization", GetAuthHeader()); 
      return request; 
     } 
     protected override WebResponse GetWebResponse(WebRequest request) 
     { 
      WebResponse response = base.GetWebResponse(request); 
      return response; 
     } 
     private string GetAuthHeader() 
     { 
      StringBuilder sb = new StringBuilder(); 
      sb.Append("Basic "); 
      NetworkCredential cred = Credentials.GetCredential(new Uri(Url), "Basic"); 
      string s = string.Format("{0}:{1}", cred.UserName, cred.Password); 
      sb.Append(Convert.ToBase64String(Encoding.ASCII.GetBytes(s))); 
      return sb.ToString(); 
     } 
    } 

如何使用此類並授權到Web服務?我在哪裏把這個類放在解決方案中?

謝謝。

回答

-2

我已經解決了我的問題:

http://www.xtremevbtalk.com/showthread.php?t=299559

+0

請問該怎麼解決問題了嗎? – javajavajava 2014-12-11 18:54:26

+0

所以你問C#代碼的授權,並提供相當長的VB代碼鏈接作爲answear。這只是說:「人們,去找到你自己的方式。」 – 2016-05-04 08:54:23

相關問題