Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/286.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/.net/21.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# web服务客户端身份验证_C#_.net_Web Services - Fatal编程技术网

C# 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

我想用c#.net客户端使用基于Java的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服务?在解决方案中,我应该把这个类放在哪里


谢谢。

我已经解决了我的问题:

因此,您询问C#代码以获得授权,并提供相当长的VB代码作为answear的链接。这只不过是说:“人们,走自己的路吧。”