C# HttpClient Digest 摘要认证 Cookie设置
1.创建凭证信息集
2.创建HttpClientHandler
3.创建HttpClient
4.发送请求
// 创建凭证信息集
var credCache = new CredentialCache
{
{
// 目标地址,如:http://localhost:8080
new Uri("http://localhost:8080"),
// 认证类型
"Digest",
// 认证凭证
new NetworkCredential("admin", "admin")
}
};
// 创建句柄
var httpClientHandler = new HttpClientHandler
{
// 设置请求认证开关
PreAuthenticate = true,
// 设置认证信息
Credentials = credCache,
// 如需自定义设置cookie,需要将UseCookies 设置为false
//UseCookies = false,
};
// 创建请求对象
HttpClient hc = new HttpClient(httpClientHandler);
// 自定义设置Cookie
//hc.DefaultRequestHeaders.Add("Cookie", "Content");
// 处理请求Json字符串
var ctx = new StringContent(dataJson, Encoding.UTF8, "application/json");
// 发送post请求
var httpResponse = hc.PostAsync(uri, ctx);