核心中的 NTLM 身份验证 HttpClient
NTLM authentication HttpClient in Core
我正在尝试使用 HttpClient 访问需要 NTLM 身份验证的 REST 服务。但是我不断收到 401 Unauthorized。
我的代码看起来像这样
private static void Main()
{
var uri = new Uri("http://localhost:15001");
var credentialsCache = new CredentialCache { { uri, "NTLM", CredentialCache.DefaultNetworkCredentials } };
var handler = new HttpClientHandler { Credentials = credentialsCache };
var httpClient = new HttpClient(handler) { BaseAddress = uri, Timeout = new TimeSpan(0, 0, 10) };
httpClient.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json"));
var response = httpClient.GetAsync("api/MyMethod").Result;
}
我的目标框架是netcoreapp2.0。如果我改成 net461,它就会工作。不确定我做错了什么?
Microsoft 已接受此错误。可能会在核心 2.1
中发布修复程序
我正在尝试使用 HttpClient 访问需要 NTLM 身份验证的 REST 服务。但是我不断收到 401 Unauthorized。 我的代码看起来像这样
private static void Main()
{
var uri = new Uri("http://localhost:15001");
var credentialsCache = new CredentialCache { { uri, "NTLM", CredentialCache.DefaultNetworkCredentials } };
var handler = new HttpClientHandler { Credentials = credentialsCache };
var httpClient = new HttpClient(handler) { BaseAddress = uri, Timeout = new TimeSpan(0, 0, 10) };
httpClient.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json"));
var response = httpClient.GetAsync("api/MyMethod").Result;
}
我的目标框架是netcoreapp2.0。如果我改成 net461,它就会工作。不确定我做错了什么?
Microsoft 已接受此错误。可能会在核心 2.1
中发布修复程序