调用WebAPI的提示:由于远程方已关闭传输流,身份验证失败。

csharp 复制代码
  			var client = new RestClient(url);
            client.Timeout = -1;
            var request = new RestRequest(Method.POST);
            client.UserAgent = "Apifox/1.0.0 (https://apifox.com)";
            request.AddHeader("Content-Type", "application/json");
            //request.AddHeader("Authorization", "Bearer 123");
            var body = @JsonData;

            request.AddParameter("application/json", body, ParameterType.RequestBody);
            IRestResponse response = client.Execute(request);

这是我的API调用代码,然后一开始提示:由于远程方已关闭传输流,身份验证失败。

我以为是因为Https 的原因:

所以添加代码来忽略SSL证书但是还是不行

csharp 复制代码
ServicePointManager.ServerCertificateValidationCallback += (sender, certificate, chain, sslPolicyErrors) => true;

于是想想应该可能是http协议的问题

于是

csharp 复制代码
ServicePointManager.SecurityProtocol = SecurityProtocolType.Ssl3 | SecurityProtocolType.Tls12 | SecurityProtocolType.Tls11 | SecurityProtocolType.Tls;

问题成功解决

分析原因应该是.Net 4.6以下版本协议固定的原因,升级.Net框架版本可以解决,或者可以上方指定协议的代码也可以解决

相关推荐
魔法阵维护师1 小时前
从零开发游戏需要学习的c#模块,第三十五章(打包发布 —— 让别人玩你的游戏)
学习·游戏·c#
iCxhust1 小时前
C# 程序,实现二进制文件十六进制查看器,支持按行定位
开发语言·单片机·嵌入式硬件·c#·微机原理·8086最小系统·8088单板机
Xin_ye100862 小时前
C# 零基础到精通教程 - WPF 专题二:数据绑定与 MVVM
开发语言·c#·wpf
Xin_ye100862 小时前
C# 零基础到精通教程 - WPF 专题一:WPF 入门与 XAML 基础
c#·wpf
兆。2 小时前
LangChain文档处理集成指南:面向知识管理开发者
开发语言·langchain·c#
_oP_i2 小时前
105、word 出现 {TOCO“1-2“HZ}
开发语言·c#·word
影寂ldy3 小时前
C#构造函数 + 析构函数
开发语言·c#
影寂ldy19 小时前
C# 类和对象
开发语言·c#
z落落21 小时前
C# 构造函数(无参/有参/重载/this)+析构函数(终结器)|GC 垃圾回收
java·开发语言·c#
z落落21 小时前
C# 字段与属性(get/set访问器、三种属性写法、只读属性)+属性拦截例子(get动态计算 + set数据校验)
开发语言·c#