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

相关推荐
追逐时光者3 小时前
一个致力于为 C# 程序员提供更佳的编码体验和效率的 Visual Studio 扩展插件
后端·c#·visual studio
SunflowerCoder6 小时前
EF Core + PostgreSQL 配置表设计踩坑记录:从 23505 到 ChangeTracker 冲突
数据库·postgresql·c#·efcore
阿蒙Amon8 小时前
C#每日面试题-常量和只读变量的区别
java·面试·c#
我是唐青枫8 小时前
C#.NET ConcurrentBag<T> 设计原理与使用场景
c#·.net
大王小生9 小时前
C# CancellationToken
开发语言·c#·token·cancellation
listhi5209 小时前
基于C#实现屏幕放大镜功能
开发语言·c#
该用户已不存在12 小时前
不止是初始化,4个C# 构造函数解析与实例
后端·c#·.net
无风听海15 小时前
深入讲解 C# 中 string 如何支持 CultureInfo
开发语言·c#
wzfj1234515 小时前
FreeRTOS xTaskCreateStatic 详解
开发语言·c#
kylezhao201915 小时前
C# DataGridView 控件使用详解
c#