HttpWebRequest请求中如何进行域登录

  工作中遇到的请求在不同域中的地址时,请求无法成功的问题

  查了很多资料,基本上都是说的以下两点

  (1).HttpWebRequest request = new HttpWebRequest();

  request.UserDefaultCredentials = true;//默认使用登录的凭据

  (2).

  request.Credentials = new NetworkCredential("username","password");

  username,password 为域登录的账号

  上述两种均未能解决问题。

 

  后来发现NetworkCredential的构造函数具有5个重载

  一、public NetworkCredential();

  // 用指定的用户名和密码初始化 System.Net.NetworkCredential 类的新实例。
  二、public NetworkCredential(string userName, SecureString password);

  // 用指定的用户名和密码初始化 System.Net.NetworkCredential 类的新实例。
  三、public NetworkCredential(string userName, string password);
  
  // 用指定的用户名、密码和域初始化 System.Net.NetworkCredential 类的新实例。
  四、public NetworkCredential(string userName, SecureString password, string domain);

  // 用指定的用户名、密码和域初始化 System.Net.NetworkCredential 类的新实例。
  五、public NetworkCredential(string userName, string password, string domain);

 

  因为未使用加密方法,第5个重载中有参数domain,即为登录的域名,使用,问题解决。

 

  request.Credentials = new NetworkCredential("username","password","domain");

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。