【发布时间】:2012-11-14 01:29:41
【问题描述】:
我有以下情况: 我在 ASP.NET 2.0 中有一个网站。它调用另一个 web 服务(在 JAVA 中)来检索用户的信息。此网络服务受密码保护并使用“https”作为其传输方式(如果我在浏览器的地址栏中输入网络服务的地址,“Windows 安全”窗口会弹出“未受保护根 [IP 地址] 的服务器需要用户名和passowrd,我不知道这是否被称为受密码保护的 web 服务。)在输入 web 服务组提供的用户名和密码后,我可以看到他们的一些一般消息,表明身份验证已完成。
以下代码是否适用于上述场景:
WebServiceProxy client=new WebServiceProxy();
client.Url=@"serviceEndPoint";
...
NetworkCredential netCred=new NetworkCredential();
netCred.UserName="UserName";//*User name supplied by WebService group.
netCred.Password="Password";//*Password supplied by WebService group.
client.Credentials=netCred;
var retObject=client.GetUserInfo(userId);
这是我应该做的传递用户名/密码吗?
为了解决这个问题,我在一个名为“soapUI”的工具中创建了一个 Soap 消息并调用了该服务,我能够使用用户信息(用户对象)获得响应。但从代码中,我得到了响应,但用户对象为空。
【问题讨论】:
-
如果您收到回复,则表明身份验证有效。您必须询问服务所有者为什么不取回用户信息。
标签: c# asp.net web-services