Http接口RestSharp中StatusCode返回0, 但服务器或本地postman获取应答正常(C#)

我的本地和其他服务器用同一段代码都可以访问:

原代码:

cs 复制代码
RestClient client = new RestClient(url);
client.Timeout = -1;
RestRequest request = new RestRequest(Method.POST);
request.AddHeader("Authorization", "Bearer " + access_token);
request.AddHeader("Content-Type", "application/json");
CommanFunction.WriteLog2("UploadData_Error.log", "params2:" + json2);
request.AddParameter("application/json", json2, ParameterType.RequestBody);
IRestResponse response = client.Execute(request);
var text = response.Content;

返回值是空,statuscode 值是0

原因:

应该是我的本机启用了TLS1.2支持,而服务器上没有启用TLS1.2的支持,所以出现同样的代码本机没问题,而服务器上没法使用。

改后代码:

cs 复制代码
RestClient client = new RestClient(url);
client.Timeout = -1;
RestRequest request = new RestRequest(Method.POST);

--添加的代码
System.Net.ServicePointManager.ServerCertificateValidationCallback += (s, cert, chain, sslPolicyErrors) => true;
System.Net.ServicePointManager.SecurityProtocol = System.Net.SecurityProtocolType.Tls12 | System.Net.SecurityProtocolType.Tls11 | System.Net.SecurityProtocolType.Tls;

--

request.AddHeader("Authorization", "Bearer " + access_token);
request.AddHeader("Content-Type", "application/json");
CommanFunction.WriteLog2("UploadData_Error.log", "params2:" + json2);
request.AddParameter("application/json", json2, ParameterType.RequestBody);
IRestResponse response = client.Execute(request);
var text = response.Content;

增加的代码:

cs 复制代码
System.Net.ServicePointManager.ServerCertificateValidationCallback += (s, cert, chain, sslPolicyErrors) => true;
System.Net.ServicePointManager.SecurityProtocol = System.Net.SecurityProtocolType.Tls12 | System.Net.SecurityProtocolType.Tls11 | System.Net.SecurityProtocolType.Tls;
相关推荐
一只哒布刘2 小时前
NFS服务器
运维·服务器
石牌桥网管3 小时前
OpenSSL 生成根证书、中间证书和网站证书
网络协议·https·openssl
lihuhelihu4 小时前
第3章 CentOS系统管理
linux·运维·服务器·计算机网络·ubuntu·centos·云计算
山东布谷科技官方4 小时前
布谷直播源码部署服务器关于数据库配置的详细说明
运维·服务器·数据库·直播系统源码·直播源码·直播系统搭建·直播软件开发
爱吃喵的鲤鱼4 小时前
linux进程的状态之环境变量
linux·运维·服务器·开发语言·c++
荒Huang5 小时前
Linux挖矿病毒(kswapd0进程使cpu爆满)
linux·运维·服务器
九河云6 小时前
如何选择适合的AWS EC2实例类型
服务器·云计算·aws
其乐无涯7 小时前
服务器技术(一)--Linux基础入门
linux·运维·服务器
写bug的小屁孩7 小时前
前后端交互接口(三)
运维·服务器·数据库·windows·用户界面·qt6.3
斑布斑布7 小时前
【linux学习2】linux基本命令行操作总结
linux·运维·服务器·学习