如何解决 HTTP Get 请求的问题

How to solve issue with HTTP Get request

我尝试通过控制台应用程序运行 简单的 GET HTTP 请求。 .NET 框架 4.7.2 语言是 C#。

class Program
{
    static readonly HttpClient _httpClient = new HttpClient();

    static void Main(string[] args)
    {
        try
        {
            ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls11 | SecurityProtocolType.Tls12 | SecurityProtocolType.Tls /*| SecurityProtocolType.Ssl3*/;


            string versionTxtUri = "https://connect.palmbeachschools.org/version.txt";
            string versionTxtContent = _httpClient.GetStringAsync(versionTxtUri).GetAwaiter().GetResult();
            Console.WriteLine(versionTxtContent);
            Console.ReadLine();
        }
        catch(Exception ex)
        {
            Console.WriteLine(ex.Message);
            Console.WriteLine(ex.InnerException);
        }
    }
}

当我在 WinServer2012 R2 标准上 运行 应用程序时出现错误

The request was aborted: Could not create SSL/TLS secure channel.

当我 运行 在 Windows 10 或 WindowsServer 2016 Standart IT 上没问题。有效。

根据 IISCrypto Windows Server 2012 有设置

你能告诉我可以调查什么吗?

解决方案是添加这些密码套装

TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384
TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256
TLS_DHE_RSA_WITH_AES_256_GCM_SHA384
TLS_DHE_RSA_WITH_AES_128_GCM_SHA256
SSL_RSA_WITH_3DES_EDE_SHA