身份验证的HttpClient问题-API

时间:2019-01-29 13:52:34

标签: vb.net rest dotnet-httpclient

我在通过服务器上的IIS向API传递某些身份验证时遇到问题。此应用程序将被来自不同位置的各种不同的人使用。

所以目前我有以下内容

Dim httpClientHandler As HttpClientHandler = New HttpClientHandler()
httpClientHandler.UseDefaultCredentials = True
Using client As HttpClient = New HttpClient(httpClientHandler)
  Using response As HttpResponseMessage = Await client.GetAsync("urlhere")

通过在我的机器上调试,我没有任何问题。它将执行POST和GET完全正常。

问题在于,当我在服务器上运行它时,当它通过IIS时,就是它跌倒了。我从不发送任何凭据。

每次都会显示401-未经授权的错误。现在,当我记录完整的错误时,我看到我正在使用WWW-Authenticate:Negotiate和WWW-Authenticate:NTLM作为标题,但是在本地执行此操作时没有提及此内容。

我可以使用服务器上的Internet Explorer获得JSON响应,这正是我所期望的,这正是导致凭据混乱的原因。

0 个答案:

没有答案