Я развернул веб-службу WCF в IIS (https, TLS1.2) в прошлом году, 2019, и клиентский код реализовал SecurityProtocolType.Tls12
, и он успешно подключился к URL-адресу веб-службы и начал работать отлично.
В этом году я столкнулся с проблемой, сказав
, что основное соединение было закрыто. При отправке произошла непредвиденная ошибка.
Я проверил SSL-сертификат URL-адреса веб-службы, если он все еще находится на TLS1.2, и он есть.
Код клиента для проверки соединения показан ниже:
public bool TestConnection(string url)
{
try
{
var myRequest = (HttpWebRequest)WebRequest.Create(url);
myRequest.Timeout = Timeout.Infinite;
myRequest.ReadWriteTimeout = 30000;
myRequest.KeepAlive = true;
myRequest.ServicePoint.Expect100Continue = false;
ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls12;
myRequest.ServerCertificateValidationCallback = (s, cert, chain, ssl) => true;
var response = (HttpWebResponse)myRequest.GetResponse();
if (response.StatusCode == HttpStatusCode.OK)
{
return true;
}
else
{
//well, at least it returned...
return false;
}
}
catch (Exception ex)
{
return false;
}
}