我正在尝试通过 https 代理进行连接,但总是捕获到一个异常,指出“ServicePointManager 不支持 https 方案的代理”。我用来测试连接的代码如下:
var handler = new HttpClientHandler
{
UseProxy = true,
Proxy = new WebProxy("https://xxx.xxx.xxx.xxx:443") {Credentials = new NetworkCredential(Username, Password)}
};
using (var client = new HttpClient(handler))
{
var x = await client.GetStringAsync("https://api.ipify.org/?format=text");
}
我还使用 curl 测试了代理,它运行良好(尽管出于某种原因我不得不使用 --proxy-insecure)。我使用的命令是:
curl --proxy-insecure -x https://username:password@xxx.xxx.xxx.xxx:443 https://api.ipify.org/?format=text
当我尝试使用 http:// 作为代理 curl 时,只是给了我错误“(56) Proxy CONNECT aborted”。
那么,是否可以在 .NET Framework 中使用 https 代理?(我目前正在使用 .NET 4.6.2)