LocalIIS上的WebApi身份验证

时间:2018-08-27 13:16:50

标签: c# asp.net asp.net-mvc asp.net-web-api httpclient

我有一个无法解决的问题,您可能可以帮助我。基本上,我有两个不同的项目,其中一个是ASP.NET MVC,另一个是ASP.NET WebApi,都具有Windows身份验证,并且在IIS Express上运行良好。我的问题是当我更改为本地IIS时。当我将两个项目都更改为Local IIS并尝试将MVC项目与WebApi项目连接时,我的User.Identity.Name是IIS池用户而不是Windows用户。

这就是我调用WebApi项目的方式。

private readonly HttpClient _client = new HttpClient(new HttpClientHandler()
{
Credentials = CredentialCache.DefaultCredentials
});

_client.BaseAddress = new Uri(UrlHelper.GetUrl());
_client.DefaultRequestHeaders.Accept.Clear();
_client.DefaultRequestHeaders.Accept.Add(new System.Net.Http.Headers.MediaTypeWithQualityHeaderValue("application/json"));

HttpResponseMessage responseMessage = _client.PostAsJsonAsync(UrlHelper.GetUrl(_controller, action), input).Result;

if (responseMessage.IsSuccessStatusCode)
{
var response = responseMessage.Content.ReadAsAsync<TReturn>().Result;

return response;
}

你能帮我吗?

非常感谢

0 个答案:

没有答案