我一直在努力让WCF客户端通过web代理工作。如果我手动指定代理,如下所示,我可以让http请求工作。
WebProxy proxy = new WebProxy("http://x.x.x.x:3128", false);
proxy.Credentials = new NetworkCredential("user", "pass");
WebRequest.DefaultWebProxy = proxy;但是,我将客户机服务代理设置为使用ClientCredentials.ServiceCertificate.Authentication.CertificateValidationMode = System.ServiceModel.Security.X509CertificateValidationMode.ChainTrust;
检查发出的数据包后,客户端成功连接到服务器,但随后会尝试验证服务提供的证书。此验证尝试失败,因为链的请求没有Proxy-Authorization标头(它们失败并出现407个错误)。如何让这些请求正确使用指定的DefaultWebProxy?
如果我将验证模式设置为None,那么它当然可以工作,但我真的不想这样做。
发布于 2012-06-09 01:44:17
此设置仅影响邮件级别证书。对于传输层,可以尝试使用下面这样的http://webservices20.blogspot.co.il/2008/12/wcf-gotcha-disabling-ssl-validation.html
https://stackoverflow.com/questions/10953247
复制相似问题