使用已登录的用户NetworkCredential连接到web服务
本文关键字:连接 web 服务 NetworkCredential 用户 登录 | 更新日期: 2023-09-27 18:16:56
这是为我工作的代码
using (var projectProxy = new Project())
{
projectProxy.Url = "...vtjbhj/pjipio/project.asmx";
projectProxy.Credentials = new NetworkCredential("username", "password", "network");
return projectProxy;
}
我将binding设置为
<bindings>
<basicHttpBinding>
<!--Used by app for SharePoint-->
<binding name="secureBinding">
<security mode="Transport" />
</binding>
</basicHttpBinding>
</bindings>
这里我硬编码用户名,密码,网络等
相反,我应该能够在这里使用当前登录的用户详细信息。
我该怎么做呢?
我试着
projectProxy.UseDefaultCredentials = true;
projectProxy.Credentials = CredentialCache.DefaultNetworkCredentials;
还是不行
任何帮助都可以拯救我的一天!
更新
*客户端和服务器在不同的机器上
*客户端和服务器在同一个域
*我收到错误信息401-未经授权。
为什么不使用下面的解决方案?
[WebMethod(Description = "Getfinfo", EnableSession = true)]
[ScriptMethod(ResponseFormat = ResponseFormat.Json)]
public string functionname()
{}
你只需要维护用户会话之后,webservice将只响应有会话的用户
如果两台机器有共同的会话