如何使用 Restsharp 连接到 API



我正在尝试使用 RestSharp 连接到 API,但是我收到以下错误:

连接

尝试失败,因为连接方在一段时间后未正确响应, 或建立的连接失败,因为连接的主机无法响应<ipaddress>:<port>

法典:

var client = new RestClient("https://api.infobip.com/sms/1/text/advanced");
var request = new RestRequest(Method.POST);
request.AddHeader("accept", "application/json");
request.AddHeader("content-type", "application/json");
request.AddHeader("authorization", "Basic " + Base64Encode());
request.AddParameter("application/json", ReturnJsonData(sms), ParameterType.RequestBody);
IRestResponse response = client.Execute(request);

奇怪的是,代码在控制台应用程序中完美运行,但在 Web 应用程序中无法连接。请帮忙。

您面临的问题可能不是因为代码,而是由于TLS。

如果您使用的是 dotnet 框架 4.5 及更高版本,请在启动中使用以下代码.cs

public void Configuration(IAppBuilder app) {
System.Net.ServicePointManager.SecurityProtocol = System.Net.SecurityProtocolType.Tls12;
ConfigureAuth(app);
}

如果您使用的是低于 4.5 的 .net 框架,请在 Global.asax 中使用以下代码

ServicePointManager.SecurityProtocol = (SecurityProtocolType)3072; //TLS 1.2
ServicePointManager.SecurityProtocol = (SecurityProtocolType)768; //TLS 1.1

最新更新