偶尔遇到的“The request was aborted:Could not create SSL/TLS secure channel.”怎么解决?

项目中涉及到调用第三方的Https的WebService,我使用的是原始的HttpWebRequest。

代码中已经考虑到是Https,加上了SSL3协议,加上了委托调用。但偶尔还是会碰到

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

这样的错误。

于是根据这篇博客所说,将其改成使用Tls协议,看看有没有用。

            if (url.StartsWith("https", StringComparison.OrdinalIgnoreCase))///https请求
            {
                ServicePointManager.Expect100Continue = true;
                ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls; //SSL3协议替换成TLS协议
                ServicePointManager.ServerCertificateValidationCallback = new RemoteCertificateValidationCallback(CheckValidationResult);
                webRequest = WebRequest.Create(url) as HttpWebRequest;
                webRequest.ProtocolVersion = HttpVersion.Version10;
            }
            else
            {
                webRequest = WebRequest.Create(url) as HttpWebRequest;
            }

  

posted @ 2015-01-12 17:53  撞上安全岛  阅读(5846)  评论(0编辑  收藏  举报