繁体   English   中英

使用C#向WCF服务客户端添加身份验证时遇到问题

[英]Having trouble adding authentication to WCF service client using C#

我正在使用以下代码调用WCF服务:

string certPath = @"C:\certs\mycert.pem";
var uri = new Uri("http://Myserver/TestService.svc/MyMethod/parm1/parm2");
X509Certificate cert = X509Certificate.CreateFromCertFile(certPath);
var request = WebRequest.Create(uri) as HttpWebRequest;
request.Credentials = new NetworkCredential("user", "password");
request.PreAuthenticate = true;
request.ClientCertificates.Add(cert);
var response = request.GetResponse();

但是得到

HTTP / 1.1 400错误请求

错误和

没有代理身份验证标头

有人可以指出正确的方向吗?

我建议你试试

 string urlAddress = "http://www.google.com"; string userName = "user01"; string password = "puser01"; string proxyServer = "127.0.0.1"; int proxyPort = 8081; HttpWebRequest request = (HttpWebRequest) WebRequest.Create(urlAddress); if (userName != string.Empty) { request.Proxy = new WebProxy(proxyServer, proxyPort) { UseDefaultCredentials = false, Credentials = new NetworkCredential(userName, password) }; string basicAuthBase64 = Convert.ToBase64String(Encoding.GetEncoding("ISO-8859-1").GetBytes(string.Format("{0}:{1}", userName, password))); request.Headers.Add("Proxy-Authorization", string.Format("Basic {0}", basicAuthBase64)); } 

参考: 通过http发送基本身份验证

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM