C# web服务客户端身份验证
我想用c#.net客户端使用基于Java的web服务 问题是,我无法对该服务进行身份验证 它与此不起作用:C# web服务客户端身份验证,c#,.net,web-services,C#,.net,Web Services,我想用c#.net客户端使用基于Java的web服务 问题是,我无法对该服务进行身份验证 它与此不起作用: mywebservice.Credentials = new System.Net.NetworkCredential(userid, userpass); 我试图为我的客户机方法编写基类 public class ClientProtocols : SoapHttpClientProtocol { protected override WebRequest Ge
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服务?在解决方案中,我应该把这个类放在哪里
谢谢。我已经解决了我的问题: 因此,您询问C#代码以获得授权,并提供相当长的VB代码作为answear的链接。这只不过是说:“人们,走自己的路吧。”