Vi diversos posts sobre esse problema, mas nenhum resolveu meu problema. Toda vez que faço a chamada do método abaixo tenho como retorno “The request was aborted: Could not create SSL/TLS secure channel.” Meu projeto utiliza .NET Framework 4.0, e é uma API que chama o método de OUTRA API.
Public Function Execute(Of T As New)() As T
ServicePointManager.ServerCertificateValidationCallback = Function(sender, cert, chain, sslPolicyErrors) True
Dim client = New RestClient("https://enderecoURI")
Dim request = New RestRequest(Method.POST)
ServicePointManager.Expect100Continue = True
ServicePointManager.SecurityProtocol = DirectCast(3072, SecurityProtocolType) _
Or DirectCast(768, SecurityProtocolType) _
Or DirectCast(12288, SecurityProtocolType) _
Or SecurityProtocolType.Tls
request.AddHeader("Content-Type", "application/json")
request.AddHeader("sourceToken", "XXXXXXXXX")
request.AddParameter("undefined", "{" & vbLf & """recipient"": ""XXXX@XXXX.com.br"",""TESTE""}", ParameterType.RequestBody)
Dim response As IRestResponse = client.Execute(request)
Try
Select Case response.StatusCode
Case Net.HttpStatusCode.OK Or HttpStatusCode.Created
If String.IsNullOrEmpty(response.Content) Then
Return Nothing
End If
Return JsonConvert.DeserializeObject(Of T)(response.Content)
Case Else
Throw New Exception(JsonConvert.SerializeObject(response))
End Select
Catch ex As Exception
Throw New Exception(ex.Message)
End Try
End Function
Algumas informações eu precisei trocar para não expor dados do meu cliente, mas nada que afete na interpretação do problema. PS: Servidor possui um certificado válido. Funciona em ambiente de desenvolvimento com WIN10, mas não funciona em ambiente de desenvolvimento com WIN7 e também não funciona em ambiente publicado com WINSERVER 2012. TLS 1.2 está habilitado no servidor.