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

相关推荐
.房东的猫4 小时前
ERP(金蝶云星空)开发【安装篇】
c#
fie888912 小时前
基于C#的推箱子小游戏实现
开发语言·c#
.房东的猫12 小时前
ERP(金蝶云星空)开发【业务数据中心创建和注册】
c#
bugcome_com13 小时前
C# 进阶核心知识点汇总|多项目开发 + 委托 + Lambda + 事件一次吃透
c#
SunflowerCoder15 小时前
基于插件化 + Scriban 模板引擎的高效 HTTP 协议中心设计
http·c#
波波00717 小时前
每日一题:中间件是如何工作的?
中间件·.net·面试题
无风听海18 小时前
.NET 10之可空引用类型
数据结构·.net
码云数智-园园18 小时前
基于 JSON 配置的 .NET 桌面应用自动更新实现指南
.net
无风听海18 小时前
.NET 10 之dotnet run的功能
.net
岩屿18 小时前
Ubuntu下安装Docker并部署.NET API(二)
运维·docker·容器·.net