将HTTP身份validation与C#WebRequest一起使用
我想向需要身份validation的页面发出Web请求。 我该怎么做呢? 我找到了一些可能使用Credentials属性的东西,但我不确定如何使用它。
将新的NetworkCredential
实例分配给Credentials
属性:
webClient.Credentials = new NetworkCredential("Mehrdad", "Password");
基本身份validation示例:
public void SetBasicAuthHeader(WebRequest req, String userName, String userPassword) { string authInfo = userName + ":" + userPassword; authInfo = Convert.ToBase64String(Encoding.Default.GetBytes(authInfo)); req.Headers["Authorization"] = "Basic " + authInfo; }
http://blog.kowalczyk.info/article/at3/Forcing-basic-http-authentication-for-HttpWebReq.html
也可以自动进行身份validation。 这将使用当前登录用户的凭据。
webClient.Credentials = CredentialCache.DefaultCredentials
- 通过身份validation访问Samba共享,无驱动器映射 – C#
- 在Office365上使用默认SMTP凭据的例外 – 客户端未经过身份validation,无法在MAIL FROM期间发送匿名邮件
- 从ASP.NET Core 1.1 MVC迁移到2.0后,自定义cookie身份validation无法正常工作
- 使用webAPI承载令牌进行SignalR认证
- .net MVC使用数据库进行简单成员身份validation
- 为什么使用“新的NetworkCredential(用户名,密码)”不适用于我的网站的基本身份validation(来自WinForms C#应用程序)?
- ASP.NET Core 2.0 Preview 1:如何使用自定义登录路径设置Cookie身份validation
- 如何在ASP.NET Core 1.0中配置身份validation
- 如何使用特定凭据连接到C#中的TFS服务器?