我有一个小问题,使用HTML托管的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。 基本挑战使用webbrowser工作正常......
答案 0 :(得分: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();