Использование HTTPS прокси для GET запроса к HTTPS сайту C#
Есть ли какие то библиотеки или костыли, с помощью которых возможно организовать запросы через HTTPS прокси?
Код работает для HTTP прокси и не работает для ssl прокси:

HttpWebRequest req = WebRequest.Create("https://twitter.com") as HttpWebRequest;
req.Proxy = new WebProxy("188.166.210.210:8080");
using (HttpWebResponse resp = (HttpWebResponse)req.GetResponse())
using (StreamReader sr = new StreamReader(resp.GetResponseStream()))
Console.WriteLine(sr.ReadToEnd());
//xNet
using (var request = new HttpRequest())
{
request.UserAgent = Http.ChromeUserAgent();
request.Proxy = HttpProxyClient.Parse("159.89.24.212:8080");
HttpResponse response = request.Get("https://twitter.com");
Console.WriteLine(response.ToString());
}
Ответы (1 шт):
Автор решения: noctual
→ Ссылка
Проблема решается использованием библиотеки Chilkat.Http
// This example requires the Chilkat API to have been previously unlocked.
// See Global Unlock Sample for sample code.
Chilkat.Http http = new Chilkat.Http();
// Set the HTTP proxy domain or IP address.
http.ProxyDomain = "172.16.16.46";
// The proxy port..
http.ProxyPort = 3128;
// Indicate that we are to use a direct TLS connection with the HTTP proxy
// (we use a Squid Cache: Version 4.11 for testing)
http.ProxyDirectTls = true;
// If the proxy requires a login or password, we can set it here.
// Otherwise comment out these lines.
http.ProxyLogin = "myProxyLogin";
http.ProxyPassword = "myProxyPassword";
// All requests sent on the http object will now go through the proxy.
// Give it a test:
string s = http.QuickGetStr("https://www.chilkatsoft.com/helloWorld.html");
if (http.LastMethodSuccess == false) {
Console.WriteLine(http.LastErrorText);
return;
}
// The LastErrorText property also contains information when method call succeeds.
// Have a look to see that the request was sent through the proxy:
Console.WriteLine(http.LastErrorText);
Console.WriteLine(s);
Console.WriteLine("Success for TLS destination over direct TLS HTTP proxy.");