.net 报错 远程主机强迫关闭了一个现有的连接 问题分析解决

先测试cmd 发现可以ping通地址:证明不是网络问题

postman 报错

Error: Hostname/IP does not match certificate's altnames

设置里ssl验证默认开启,把选项关闭,接着就正常了:证明应该是https或ssl 相关通讯出现问题

visual studio 报错

远程主机强迫关闭了一个现有的连接

原先项目框架是.net 4.0 没有问题 升级成.net4.5.2后开始报错

原因分析

https前缀会有ssl证书验证,在post调取该地址时,可以忽略掉该验证,否则会产生调不到的情况。

原来.net4.0的时候 调用代码前加忽略掉ssl验证

ServicePointManager.ServerCertificateValidationCallback = (sender, certificate, chain, sslPolicyErrors) => true;

升级.net4.5.2之后 SecurityProtocolType的默认支持有问题

添加代码

System.Net.ServicePointManager.SecurityProtocol |= (SecurityProtocolType.Tls11 | SecurityProtocolType.Tls12);

或者
System.Net.ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls12 | SecurityProtocolType.Tls11 | SecurityProtocolType.Tls;

相关推荐
Ws_12 小时前
C#学习 Day2
开发语言·学习·c#
神仙别闹14 小时前
基于C#实现(WinForm)求解SIN(X)数值分析
c#
吴可可12320 小时前
样条曲线转多段线技巧
算法·c#
影寂ldy21 小时前
C#多维数组
开发语言·算法·c#
淡海水1 天前
01-认知篇-总览-HybridCLR是什么
unity·c#·aot·热更新·clr·hybrid
Xin_ye100861 天前
C# 零基础到精通教程 - 第十三章:文件与流 I/O——读写文件
开发语言·c#
xiaoshuaishuai81 天前
C# 服务注册与生命周期
开发语言·windows·c#
光泽雨1 天前
c#中特性的定义和IEnumerable<T>
c#
公子小六1 天前
基于.NET的Windows窗体编程之WinForms打印
windows·microsoft·c#·.net·winforms