Ser*_*erG 6 .net c# proxy credentials dotnet-httpclient
控制狂免责声明:是的,关于 HttpClient 和代理有很多问题,但它们至少使用其中之一
如果 HttpClientHandler.Proxy 默认值为 null,则 HttpClientHandler 将使用 IE 代理设置
因此,要使用 HttpClient 设置正确的公司代理,我们不需要任何其他操作,只需
_client = new HttpClient()
Run Code Online (Sandbox Code Playgroud)
并且没有官方方法来选择代理。但是我如何传递默认 AD 凭据以在自动发现的代理上进行身份验证呢?我刚刚收到“(407) 需要代理身份验证”。
PS 可能还有另一个问题,并且在特殊帐户下作为服务运行(尤其是在 Linux 上),此代码没有 IE 设置可供使用。所以我们需要重新实现WPAD。
您可以使用类似 HttpClient 的代码将凭据传递给默认系统代理:
var handler = new HttpClientHandler();
handler.DefaultProxyCredentials = CredentialCache.DefaultCredentials;
var client = new HttpClient(handler);
Run Code Online (Sandbox Code Playgroud)