2009-12-11 191 views
0

我有一个小问题,使用基于HTTPS的 基本身份验证托管的web服务登录。我尝试了以下,但它不起作用。这有什么限制或陷阱吗?WCF客户端调用Java Web服务

  var client = new WSClient(); 
      client.ClientCredentials.UserName.UserName = "xxx"; 
      client.ClientCredentials.UserName.Password = "yyy"; 
      client.doIt(); 

客户端显示了HTTP 401未经授权的代码异常,但它并没有尝试登录。 客户端正在使用WCF并且由Visual Studio 2008生成,服务器正在运行Java Apache CXF。 使用一个网页浏览器...

回答

1

的基本挑战工作正常,经过一番调查后这样做的登录:

var binding = new BasicHttpBinding(); 
binding.Security.Mode=BasicHttpSecurityMode.TransportCredentialOnly; 
binding.Security.Transport.ClientCredentialType=HttpClientCredentialType.Basic; 
var client = new WSClient(binding, new EndpointAddress("http://localhost/myws")); 
client.ClientCredentials.UserName.UserName = "xxx"; 
client.ClientCredentials.UserName.Password = "yyy"; 
client.doIt();