![](/img/trans.png)
[英]How do I determine (elegantly) if proxy authentication is required in C# winforms app
[英]Why do I get 'Proxy Authentication Required'when I've set up proxy credentials in c#
我發現了幾個與此有關的問題,但它們似乎可以解決Windows身份驗證。 我有自定義的用戶名和密碼,此代碼可與其他現有代理一起使用。 現在一個星期以來,我們使用了新的代理服務器,這些服務器使用{Basic realm="Private Proxies - Password Auth"}
,並且代碼不起作用。
var user = "********";
var pass = "********";
var port = "********";
var ip = "********";
var url = "********";
var baseUrl = "********";
NetworkCredential cr = new NetworkCredential(user, pass);
cr.Domain = ip;
WebProxy proxy = new WebProxy(ip + ":" + port) { BypassProxyOnLocal = false, Credentials = cr, UseDefaultCredentials = false};
HttpClientHandler handler = new HttpClientHandler();
handler.Proxy = proxy;
handler.UseProxy = true;
HttpClient httpClient = new HttpClient(handler);
httpClient.BaseAddress = new Uri(baseUrl);
var result = httpClient.GetAsync(url).Result;
Console.WriteLine(result.Content.ReadAsStringAsync().Result);
Console.Read();
我已經使用Firefox測試了憑據,並且在彈出窗口中提供了憑據之后,代理可以工作。 我在代理中設置了NetworkCredential,但是當我執行請求時,它僅返回407: Proxy Authentication Required
。
我嘗試手動設置Proxy-Authorization
標頭。 它仍然不起作用。
有誰知道如何解決這一問題!?
您需要填寫Proxy-Authorization
標頭: https : //developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Proxy-Authorization
另外,請看以下問題: C#中的代理基本身份驗證:HTTP 407錯誤
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.