我正在与使用双向TLS v1.2的服务器通信。我已经能够在c#控制台应用程序中发出此请求,但是当我将此确切代码复制到Xamarin表单时,我的RestClient给我一个例外:几秒钟后“对等连接重置”。
代码:
var client = new RestClient("https://api-sandbox.rabobank.nl/openapi/sandbox/payments/account-information/ais/v3/accounts");
ServicePointManager.Expect100Continue = true;
ServicePointManager.DefaultConnectionLimit = 9999;
ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls | SecurityProtocolType.Tls11 | SecurityProtocolType.Tls12;
client.ClientCertificates = new X509CertificateCollection() { certificate };
client.Proxy = new WebProxy();
var request = new RestRequest(Method.GET);
var response = client.Execute(request);
Console.WriteLine(response.StatusCode);
Console.WriteLine(response.Content);
出于明显的原因,我无法共享我的API密钥等。这些是通过标头添加的,并已从代码段中删除。
我尝试过的事情:
我检查了项目是否设置为使用TLS 1.2,iOS和Android都使用。
我在模拟器和真实设备上尝试过