C#错误。该请求已中止:无法创建SSL / TLS安全通道

问题描述 投票:0回答:2

我已经创建了c#.Net客户端和一个节点js服务器。我收到fwg错误将节点项目转移到新的Ubuntu服务器后

Exception thrown: 'System.Net.WebException' in System.dll
Exception caught: System.Net.WebException: The request was aborted: Could not create SSL/TLS secure channel.
   at System.Net.HttpWebRequest.GetResponse()

客户端在较早的服务器上正常工作。证书是自签名的,我使用了证书错误旁路方法:

ServicePointManager.ServerCertificateValidationCallback = delegate { return true; };

哪个可以与较早的服务器配合使用。我还尝试了客户端中的以下方法:

 ServicePointManager.ServerCertificateValidationCallback =
         new RemoteCertificateValidationCallback(
              delegate
              { return true; }
          );
 ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls12;
 ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls11;
 ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls;
 ServicePointManager.SecurityProtocol = SecurityProtocolType.ssl3;

我可以使用常规浏览器在https上访问Seerver。

c# node.js tls1.2
2个回答
0
投票

尝试一下:

ServicePointManager.SecurityProtocol |= SecurityProtocolType.Tls | SecurityProtocolType.Tls11 | SecurityProtocolType.Tls12;

并确保您在URL中使用HTTPS。否则,尝试在URL中仅使用HTTP。

祝你好运!


0
投票

已解决!

我用HttpWebRequest取代了WebClient方法,并且有效。我仍然不确定为什么早期版本无法正常运行,而且它只能在一台服务器上运行而不能在其他服务器上运行。奇怪。无论如何,我现在就可以使用它。

© www.soinside.com 2019 - 2024. All rights reserved.