调试 HttpClient 凭据问题
您的 HttpClient 未随请求发送身份验证详细信息,导致服务器身份验证失败。 虽然 WebClient 按预期工作,但 HttpClient 失败。让我们找出根本原因并解决它。
您已将 UseDefaultCredentials
设置为 true
。 然而,这并不总是足够的。 系统需要正确的凭据。
解决此问题的方法如下:
HttpClientHandler
使用 CredentialCache.DefaultCredentials
显式定义凭据:<code class="language-csharp">var myClient = new HttpClient(new HttpClientHandler() { UseDefaultCredentials = true, Credentials = CredentialCache.DefaultCredentials });</code>
这会强制 HttpClient 使用默认系统凭据,镜像 WebClient 的行为。 这可确保在向 Web 应用程序发出请求期间正确模拟用户。
以上是为什么我的 HttpClient 不传递凭据,如何修复它?的详细内容。更多信息请关注PHP中文网其他相关文章!