Не удалось установить SSL-соединение. Только ПК с Windows, macOS в порядке. ⇐ C#
-
Anonymous
Не удалось установить SSL-соединение. Только ПК с Windows, macOS в порядке.
Я пытаюсь запросить метод API, используя приведенный ниже код, и только в ОС Windows получаю эту ошибку
»System.Net.Http.HttpRequestException: «Не удалось установить SSL-соединение, см. внутреннее исключение». AuthenticationException: аутентификация не удалась, см. внутреннее исключение."
но при попытке использовать тот же код в macOS все работает нормально и данные получаются правильные.
Есть ли какая-нибудь конфигурация для запуска этого в Windows?
var handler = новый HttpClientHandler { ClientCertificateOptions = ClientCertificateOption.Manual, SslProtocols = SslProtocols.Tls12, ServerCertificateCustomValidationCallback = (e, r, c, n) => true, }; обработчик.ClientCertificates.Clear(); handler.ClientCertificates.Add(new X509Certificate2(@"cert.pfx", "xxx")); вар клиент = новый HttpClient (обработчик); ServicePointManager.SecurityProtocol |= SecurityProtocolType.Tls12; ServicePointManager.Expect100Continue = true; var result = await client.GetAsync("https://some_url.com/some_method"); вар tmp = result.Content.ReadAsStringAsync();
Я пытаюсь запросить метод API, используя приведенный ниже код, и только в ОС Windows получаю эту ошибку
»System.Net.Http.HttpRequestException: «Не удалось установить SSL-соединение, см. внутреннее исключение». AuthenticationException: аутентификация не удалась, см. внутреннее исключение."
но при попытке использовать тот же код в macOS все работает нормально и данные получаются правильные.
Есть ли какая-нибудь конфигурация для запуска этого в Windows?
var handler = новый HttpClientHandler { ClientCertificateOptions = ClientCertificateOption.Manual, SslProtocols = SslProtocols.Tls12, ServerCertificateCustomValidationCallback = (e, r, c, n) => true, }; обработчик.ClientCertificates.Clear(); handler.ClientCertificates.Add(new X509Certificate2(@"cert.pfx", "xxx")); вар клиент = новый HttpClient (обработчик); ServicePointManager.SecurityProtocol |= SecurityProtocolType.Tls12; ServicePointManager.Expect100Continue = true; var result = await client.GetAsync("https://some_url.com/some_method"); вар tmp = result.Content.ReadAsStringAsync();
Мобильная версия