无法与HttpClient C#和TLS 1.x建立连接

时间:2019-08-10 12:59:51

标签: ssl asp.net-web-api https httpclient tls1.2

我正在使用Asp.net c#。我有一个外部API网址,它确实启用了TLS 1.2/1.1来响应特定的网址。我想从我的Web API中使用该API。我已经编写了以下代码来访问相同的代码。

    public async Task<bool> Post(string oauth_signature, string oauth_consumer_key, string oauth_timestamp, string oauth_nonce, CheckKYCRequestModel payload)
    {
        ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls | SecurityProtocolType.Tls11 | SecurityProtocolType.Tls12 | SecurityProtocolType.Ssl3;

        string url = "https://recycle.icicipruamc.com/Distributorsvcs/InvestorService.svc/JSON/CheckKYC?oauth_signature=" + oauth_signature + 
            "&oauth_consumer_key=" + oauth_consumer_key + "&oauth_timestamp=" + oauth_timestamp + "&oauth_nonce=" + oauth_nonce + "";

        var jsonData = JsonConvert.SerializeObject(payload);

        var content = new StringContent(jsonData, Encoding.UTF8, "application/json");
        HttpClient client = new HttpClient();
        var response = await client.PostAsync(url, content);
        return true;
    }

但是我无法建立连接,并引发 “无法访问服务器” 错误。

我尝试从Fiddler进行相同的操作,并且工作正常,但即使HttpClient也无法使用{{1}},即使客户端IP地址相同并且在两种情况下都启用了TLS。

enter image description here enter image description here

我在做什么错了?

0 个答案:

没有答案