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

相关推荐
ZoeJoy88 小时前
C# + 机器视觉 + AI:从工业相机取图到 YOLO 目标检测的完整工控解决方案
人工智能·数码相机·c#
小贺儿开发13 小时前
Unity3D 家居视频遥控效果演示
unity·udp·人机交互·网络通信·winform·远程·photon
武藤一雄14 小时前
C# 竟态条件
microsoft·c#·.net·.netcore
FL162386312915 小时前
基于C#winform部署RealESRGAN的onnx模型实现超分辨率图片无损放大模糊图片变清晰
开发语言·c#
武藤一雄16 小时前
WPF深度解析Behavior
windows·c#·.net·wpf·.netcore
蓝天星空16 小时前
C#中for循环和foreach循环的区别
开发语言·c#
极客智造16 小时前
Nito.AsyncEx 详解:.NET 异步编程的瑞士军刀
.net
桑榆肖物16 小时前
用 .NET 做一个跨平台的 Improv Wi-Fi 蓝牙配网项目
.net·蓝牙·iot
小邓的技术笔记17 小时前
.NET 进阶之路:异步、并发与内存管理的系统性认知
.net