https网站访问第三方https网站时候报错: The request was aborted:Could not create SSL/TLS secure channel.

https网站访问第三方https网站时候报错:

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

解决办法:

if(Url.StartsWith("https",StringComparison.OrdinalIgnoreCase))//https请求
                {
                    ServicePointManager.Expect100Continue = true;
                    //如果是4.5以上版本可以直接使用
                    //ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls
                    //                                        | SecurityProtocolType.Tls11
                    //                                        | SecurityProtocolType.Tls
                    //                                        | SecurityProtocolType.Ssl3;
                    ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls
                                                            | (SecurityProtocolType)768
                                                            | (SecurityProtocolType)3072
                                                            | SecurityProtocolType.Ssl3;
                    ServicePointManager.ServerCertificateValidationCallback = new System.Net.Security.RemoteCertificateValidationCallback(CheckValidationResult);
                    request = WebRequest.Create(Url_Temp) as HttpWebRequest;
                    request.ProtocolVersion = HttpVersion.Version10;
                }
                else
                {
                    request = WebRequest.Create(Url_Temp) as HttpWebRequest;
                }

 回调函数:

    private static bool CheckValidationResult(object sender, X509Certificate certificate, X509Chain chain, SslPolicyErrors sslPolicyErrors)
    {
        //为了通过证书验证,总是返回true
        return true;
    }

猜你喜欢

转载自www.cnblogs.com/kevin860/p/12150043.html