.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;

相关推荐
ITMr.罗1 小时前
深入理解EF Core更新机制(开发中因为省事遇到的问题)
服务器·数据库·c#·.net
用户4488466710601 小时前
.NET进阶——深入理解委托(3)事件入门
c#·.net
总有刁民想爱朕ha2 小时前
.NET 8 和 .NET 6 性能对比的测试
.net·性能测试·.net6·.net8
总有刁民想爱朕ha3 小时前
银河麒麟v10服务器版Docker部署.NET 8 WebAPI教程
docker·容器·.net·银河麒麟v10服务器版
仪***沿4 小时前
C# 与台达 PLC 串口通讯实现实时监控
.net
武藤一雄5 小时前
C# 万字拆解线程间通讯?
后端·微软·c#·.net·.netcore·多线程
赵庆明老师5 小时前
NET 10 集成Session
缓存·.net
lljss20205 小时前
C# 定时器类实现1s定时器更新UI
开发语言·c#
白杨攻城狮5 小时前
C# 关于 barierr 心得
开发语言·c#
SEO-狼术5 小时前
Detect Trends with Compact In-Cell Visuals
.net