将HTTP身份验证与C#WebRequest一起使用

时间:2009-04-02 00:38:42

标签: c# authentication webrequest

我想向需要身份验证的网页发出网络请求。我该怎么做呢?我找到了一些可能使用Credentials属性的东西,但我不确定如何使用它。

3 个答案:

答案 0 :(得分:44)

将新的NetworkCredential实例分配给Credentials属性:

webClient.Credentials = new NetworkCredential("Mehrdad", "Password");

答案 1 :(得分:22)

基本身份验证示例:

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

答案 2 :(得分:3)

也可以自动进行身份验证。这将使用当前登录用户的凭据。

webClient.Credentials = CredentialCache.DefaultCredentials